使用子文件包時引用/標記問題

使用子文件包時引用/標記問題

我在將標籤與包裝一起使用時遇到問題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 ...

這會導致未定義的參考錯誤。有人能幫我嗎?是label指令的問題嗎?還是我做錯了什麼?

答案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,有兩個名為 的附加 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比返回:

在此輸入影像描述

現在假設您的所有部分都在主文檔中調用,這應該允許您從簡介中引用這些部分(但不是當前佈局的小節)。

相關內容