如何修复目录中的页码和页码引用?

如何修复目录中的页码和页码引用?

嘿,我的目录中的附录显示不正确

编号错误

“表格列表”一章实际上在第 40 页,但“附录 A”(在名为“Dodatek A”的图片中,“Dodatek”从波兰语翻译过来是“附录”)在第 41 页 - 附录 A 的超链接也指向第 40 页,但附录 B 显示正确,并且指向它的超链接也能正常工作 - 第 43 页的附录 C 也是如此。

该项目的主要文件包括:

\{input{work/chapters/additions}.

并且“additions”文件包含:

    \{addcontentsline{toc}{chapter}{Dodatek A}

    \{includepdf[scale=1,pages=1,pagecommand=chapter*{Appendix A - Circuit Schematic}}}

    {{Appendix/Appendices/Schemat_calculus.pdf}}



    \{addcontentsline{toc}{chapter}{DodatekB}}

    \‗includepdf[scale=1,pages=1,pagecommand=chapter*{Appendix B - Printed Circuit Board Paths}}]{Work/app:appendix_B}}



    \addcontentsline{toc}{chapter}{DodatekC}

    \includepdf[scale=0.9,pages=1,pagecommand=chapter*{Appendix C - Printed Circuit Board Assembly Schematic}}]{Work/appendix/mounting.pdf}

我还尝试在主文件中的 \input 之前以及附加文件中的每个 \addcontentsline 命令之前添加 \phantomsection,但这没有帮助。

如果它很重要:附录文件将位于作品末尾,不包含章节编号,并且每个文件实际上只是一个 pdf 文件。

答案1

以下需要软件包nextpagehyperref。根据您的配置,您可能不需要这些。如果您用任何所需的页面样式替换plain和/或empty,它将适用于单页或多页 PDF。

\NewDocumentCommand\includepdfspecial { O{}mm }{%
  \def\makeregstyle{\thispagestyle{plain}}% substitute name of page style here
  \def\makethisstyle{\thispagestyle{empty}\addcontentsline{toc}{chapter}{#2}}%
  \def\makedynstyle{\makethisstyle\global\let\makethisstyle\makeregstyle}%
  \clearpage\cleartooddpage[\thispagestyle{empty}]%
  \phantomsection
  \includepdf[
        pagecommand={\makedynstyle},
        #1,
    ]{#3}%
}

用法:\includepdfspecial[<options>]{<title for toc>}{<filename>}.<options>可以是您想要传递的任何选项\includepdf<title for toc>是需要添加到内容中的标题,<filename>是您通常提供的文件的名称\includepdf

请注意,虽然我使用了非常类似的东西,但由于缺乏任何可供测试的东西,因此此特定代码未经测试。

答案2

这是创建无数章节的另一种方法。另一方面,我无法pagecommand真正打印东西,更不用说了\cleardoublepage

为了让 PDF 页面适合章节标题下方,我从顶部和底部修剪了 2 英寸,然后将其与页面底部对齐。

\documentclass{book}
\usepackage{graphicx}

\begin{document}
{\tableofcontents}% note group

\chapter{Normal Chapter}

\makeatletter
\addtocontents{toc}{\string\let\string\numberline\string\@gobble}% turn off numbers in the ;middle of the TOC
\let\@makechapterhead\@makeschapterhead
\makeatother

\chapter{Numberless chapter}
\AddToHookNext{shipout/background}{\put(0pt,-\paperheight)%
  {\includegraphics[page=1,clip,trim=0pt 2in 0pt 2in]{test5}}}% replace tsst5 with your own PDF

\end{document}

答案3

\makeatletter
\addtocontents{toc}{\string\let\string\numberline\string\@gobble}
\let\@makechapterhead\@makeschapterhead
\makeatother
\chapter*{Appendix A}
\addcontentsline{toc}{chapter}{Appendix A}
\AddToHookNext{shipout/background}{\put(0pt,-\paperheight){\includegraphics[page=1,clip,trim=0pt 0in 0pt 0in]{Work/Appendix/Appendix_A.pdf}}}

\makeatletter
\addtocontents{toc}{\string\let\string\numberline\string\@gobble}
\let\@makechapterhead\@makeschapterhead
\makeatother
\chapter*{Appendix B}
\addcontentsline{toc}{chapter}{Appendix B}
\AddToHookNext{shipout/background}{\put(0pt,-\paperheight){\includegraphics[page=1,clip,trim=0pt 0in 0pt 0in]{Work/Appendix/Appendix_B.pdf}}}

相关内容