我有一个由多个部分组成的项目,每个部分都有多个章节。这些部分以 编写main.tex
,每个章节都作为 的单独\subfile
部分包含在内main.tex
。
有没有办法在交叉引用某个部分(或较低级别)时自动包含part
和编号?chapter
例子main.tex
\documentclass{book}
\usepackage{xr-hyper}
\usepackage[colorlinks=true, allcolors=blue]{hyperref}
\begin{document}
% Part 1
\part{}
\label{part: 1}
% Include chapter 1
\subfile{Pt1/Ch1}
\end{document}
示例chapter
子文件
\documentclass[../main.tex]{subfiles}
\begin{document}
\Chapter{My first chapter}
\section{My first section}
\subsection{My first subsection}
\label{SS: My first subsection}
\section{My second section}
In \ref{SS: My first subsection} we discussed...
\end{document}
我正在寻找\ref
生成以下形式的交叉引用的命令:
在第 1 部分第 1 章 1.1 中,我们讨论了……
感谢您的帮助。
答案1
这能达到你的要求吗?
您可以使用命令定义节和小节的标签格式\labelformat{<target heading>}{<format>}
。
例如:
主文本
\documentclass{book}
\usepackage{xr-hyper}
\usepackage[colorlinks=true, allcolors=blue]{hyperref}
\usepackage{subfiles}
\labelformat{section}{Pt~\arabic{part}, Ch~\thechapter, \thesection}
\labelformat{subsection}{Pt~\arabic{part}, Ch~\thechapter, \thesubsection}
\begin{document}
% Part 1
\part{}
\label{part: 1}
% Include chapter 1
\subfile{Pt1/Ch1}
\end{document}
chapter
子文件
\documentclass[../main.tex]{subfiles}
\begin{document}
\chapter{My first chapter}
\section{My first section}
\label{S: My first section}
\subsection{My first subsection}
\label{SS: My first subsection}
\section{My second section}
In \ref{SS: My first subsection} we discussed... In \ref{S: My first section} we discussed...
\end{document}