交叉引用和子文件

交叉引用和子文件

我想在一个大项目中的子文件之间进行引用,主文件的主要结构如下main.tex

\documentclass[12pt]{book}
\usepackage{subfiles}
\usepackage{xr} 
\externaldocument[I-]{intro/intro}                                                                                             
\externaldocument[A-]{ante/ante}

 \begin{document}
  \chapter{chap1}
    \subfile{intro/intro.tex}
   \chapter{chap2}
    \subfile{ante/ante.tex}     
  \end{document}  

和子文件 1 intro.tex:

\documentclass[../main.tex]{subfiles}
\begin{document}
  ... \section{secA}\label{sec:secta}
 \end{document}

以及子文件 2 ante.tex:

\documentclass[../main.tex]{subfiles}
\begin{document}
  ... in \ref{I-sec:secta}
 \end{document}

但问题是我只收到“... 在 (??)“ 而不是参考编号 ”在(数字)“在输出文件中ante.pdf,我尝试更改路径,但??参考编号中仍然有。有人知道如何解决这个问题吗?提前谢谢了。

答案1

的编译ante.tex不会解析的交叉引用,因为它根本intro.tex没有任何信息。intro.tex

\externaldocument[I-]{../intro/intro}再次使用ante.tex

\documentclass[../subfilesmain.tex]{subfiles}
\externaldocument[I-]{../intro/intro} 
\begin{document}
in \ref{I-sec:secta}
\end{document}

subfilesmain.tex

\documentclass[12pt]{book}
\usepackage{subfiles}
\usepackage{xr} 
\externaldocument[I-]{intro/intro}                                                                                             
\externaldocument[A-]{ante/ante}

 \begin{document}
 \chapter{chap1}
 \subfile{intro/intro.tex}
 \chapter{chap2}
 \subfile{ante/ante.tex}     
\end{document}  

intro.tex

\documentclass[../subfilesmain.tex]{subfiles}
\begin{document}
... \section{secA}\label{sec:secta}
\end{document}

相关内容