サブファイル パッケージの使用中に参照/ラベル付けに問題が発生する

サブファイル パッケージの使用中に参照/ラベル付けに問題が発生する

パッケージと一緒にラベルを使用する際に問題がありますsubfiles。あるセクションに書き込み中に別のセクション (または、そのセクション内の何か) を参照しようとすると、未定義のラベル エラーが発生します。私の場合main.tex:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{graphicx}
\graphicspath{{images/}{../images/}}

\usepackage{subfiles}

\begin{document}
\maketitle

\section{Introduction}
\label{sec:intro}
\subfile{sections/CH1_Introduction}

\section{Theory of Ultrasound Anemometer}
\label{sec:theory}
\subfile{sections/CH2_Theory}

次に、たとえば、「導入」セクションのファイルに次のように記述します。

In section \ref{sec:theory} the theory will be discussed ...

その結果、未定義の参照エラーが発生します。誰か助けてくれませんか? ラベル コマンドの問題でしょうか? それとも、何か他の間違いをしているのでしょうか?

答え1

これはパッケージ xr で実行できます。プロジェクトのレイアウトについていくつかの仮定を行う MWE を次に示します。ルート フォルダーの というファイルの下main.tex:

\documentclass{article}
\usepackage{xr}
\usepackage{subfiles}

\begin{document}
\section{Introduction}
\subfile{sections/CH1_Introduction}
\label{sec:intro}

\section{Theory of Ultrasound Anemometer}
\subfile{sections/CH2_Theory}
\label{sec:theory}
\end{document}

次に、 というサブフォルダにsections、 という 2 つの追加の tex ファイルがありますCH1_Introduction

\documentclass[../main.tex]{subfiles}
\externaldocument{../main.tex}

\begin{document}
This is a text written in the introduction file that discusses the rest of the paper. We will discuss the theory of ultrasound traducers in section \ref{sec:theory}.
\end{document}

そしてCH2_Theory.tex

\documentclass[../main.tex]{subfiles}
\externaldocument{../main.tex}
\begin{document}
Here we talk about the ultrasound traducers that we said we would discuss in section \ref{sec:intro}. 
\end{document}

コンパイルするmain.texと以下が返されます:

ここに画像の説明を入力してください

ここで、すべてのセクションがメイン ドキュメント内で呼び出されていると仮定すると、序論からセクション (現在のレイアウトではサブセクションではない) を引用できるようになります。

関連情報