Фактический номер страницы и номер страницы содержания не совпадают

Фактический номер страницы и номер страницы содержания не совпадают

Номер страницы, указанный в содержании, и фактический номер страницы не совпадают.Содержание страницы

Аннотация должна начинаться со страницы i, Список сокращений должен начинаться со страницы iv. В то время как Благодарности, Содержание и список рисунков пронумерованы правильно, список рисунков имеет совершенно другую схему!

Я использую ..

\documentclass[12pt, parskip=full]{report}
\usepackage[doublespacing]{setspace}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage[letterpaper, left=1.5in, right=1in, top=1in, bottom=1in,]{geometry}
\usepackage{adjustbox}
\usepackage{tikz}
\usepackage{lipsum}
\usepackage[utf8]{inputenc}
\usepackage{enumitem}

\usepackage{tocbibind}

\begin{document}
\maketitle

\pagenumbering{roman}   
\input{abstr}
\addcontentsline{toc}{chapter}{Abstract}

\input{ack}
\addcontentsline{toc}{chapter}{Acknowledgements}

\input{abbrev}
\addcontentsline{toc}{chapter}{List of Abbreviations}

\tableofcontents
\listoffigures
\listoftables


\pagenumbering{arabic}  
\part{Introduction}
\input{intro}

Для глав «Аннотация», «Благодарности» и «Список сокращений» я использую команду:

\*chapter{Chapter Name}

Любая помощь в том, как правильно пронумеровать страницы, была бы очень признательна. Заранее спасибо!

EDIT: Номер страницы раздела «Список таблиц» был исправлен с помощью

\clearpage

после

\listoftables

решение1

Для того чтобы название главы и соответствующая ей запись в оглавлении имели одинаковый номер страницы, выпуски \chapter*и \addcontentslineдолжны быть выполнены на одной странице ( \chapterуже содержит вызов , \addcontentslineпоэтому они будут отображаться на одной странице).

С использованием

\input{<chapter-file>.tex}
\addcontentsline{toc}{chapter}{<chapter title>}

будет работать только если содержимое <chapter-file>.texне превышает настройки одной страницы. И это редко бывает для "главы", в общем.

Вашим решением будет один из следующих подходов:

  1. Включить строку

    \addcontentsline{toc}{chapter}{<chapter title>}
    

    как часть вашего <chapter-file>.texнепосредственного выполнения \chapter*команды.

  2. Если у вас нет доступа к <chapter-file>.texили вы хотите отделить текст главы от конструкций макета, вы также можете использовать

    \cleardoublepage
    \addcontentsline{toc}{chapter}{<chapter title>}
    \input{<chapter-file>}
    

    Поскольку \addcontentslineне задает никакого содержимого, \chapter*выданное внутри \input{<chapter-file>}все равно будет размещено на той же странице и, следовательно, предоставит правильную страницу в оглавлении.

  3. Автоматизируйте процесс с помощью переключателей: \addstarchaptertotocначинает вставку \chapter*заголовков в оглавление, при этом \removestarchapterfromtocвозвращается к старому формату, при котором \chapter*не добавляется в оглавление.

    Вот код, который вам понадобится для автоматизации этого процесса (с некоторой помощью отxparse):

    \usepackage{xparse}
    
    \let\oldchapter\chapter % Copy \chapter into \oldchapter
    \NewDocumentCommand{\starchaptotoc}{s o m}{%
      \IfBooleanTF{#1}
        {\oldchapter*{#3}% \chapter*
         \addcontentsline{toc}{chapter}{#3}% Add chapter title to ToC
        }
        {\IfValueTF{#2}
          {\oldchapter[#2]{#3}}% \chapter[.]{..}
          {\oldchapter{#3}}% \chapter{..}
        }%
    }
    
    \newcommand{\addstarchaptertotoc}{\renewcommand{\chapter}{\starchaptotoc}}
    \newcommand{\removestarchapterfromtoc}{\renewcommand{\chapter}{\oldchapter}}
    

Я бы, пожалуй, выбрал вариант (2).

Связанный контент