不同子文件的交叉引用

不同子文件的交叉引用

我在两个文件之间进行交叉引用时遇到问题。我的文件排列如下例所示:https://tex.stackexchange.com/a/148818/147782

主文件中包含两个文件,\input我试图从一个文件引用另一个文件。我尝试创建一些简短的示例文件,这些文件可以正常工作。所以我假设错误出在标签上。

有可能吗,它\label必须与一个对象绑定在一起?例如,它可以独立存在还是需要锚点?因为我的附录构造得有点奇怪,因为我必须.pdf在那里包含文件,所以那里没有像标题或图像这样的实际对象,只有文件链接。真正奇怪的是,我刚刚发现,有些标签有效,而其他标签无效。例如,从这里的标签来看,CFA1 和 CFBS1 有效,而 NMBS 无效,即使它们位于同一位置,并且所有...我都用来\pageref{NMBS}引用它们。

\section*{Appendix}
\addcontentsline{toc}{section}{Appendix}
\pagebreak
\addcontentsline{toc}{subsection}{Coal Face Shot by Shot Analysis Part I} \label{CFA1}
\includepdf[pages=-, landscape, pagecommand={\thispagestyle{plain}}]{Appendices/CF1Protokoll}
\addcontentsline{toc}{subsection}{Coal Face Bar Sheet Part I} \label{CFBS1}
\includepdf[pages=-,  pagecommand={\thispagestyle{plain}}]{Appendices/CF1Rhythm}
\addcontentsline{toc}{subsection}{Night Mail Bar Sheet} \label{NMBS}
\includepdf[pages=-,  pagecommand={\thispagestyle{plain}}]{Appendices/NM5Rhythm}

压缩的简短版本:https://www.dropbox.com/s/3dbr527094q3pg7/Appendix.zip?dl=0

答案1

楼主在后面漏了一个逗号pagecommand{}addtotoc,也就是说应该是pagecommand{...},addtotoc=....

\documentclass[12pt]{article}

\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[utf8]{inputenc}
\usepackage[german,british]{babel}

\usepackage{pdfpages} % pdf package http://texdoc.net/texmf-dist/doc/latex/pdfpages/pdfpages.pdf

\begin{document}

\tableofcontents % Prints the main table of contents

\input{B}
\input{A}

\end{document}

在 A.tex 中:

\section*{Appendix}
\addcontentsline{toc}{section}{Appendix}
\pagebreak
%\addcontentsline{toc}{subsection}{Coal Face Bar Sheet Part I} \label{CFBS1}
\includepdf[pages=-, pagecommand={\thispagestyle{plain}}, addtotoc={1,subsection,2,Coal Face Bar Sheet Part I,CFBS1}]{CFBS1} 
%\addcontentsline{toc}{subsection}{Coal Face Shot by Shot Analysis Part II} \label{CFA2}
\includepdf[pages=-,  landscape, pagecommand={\thispagestyle{plain}},addtotoc={1,subsection,2,Coal Face Shot by Shot Analysis Part I,CFA2}]{CFA2}

在此处输入图片描述

相关内容