如何使用子文件获取整个文档的连续章节编号?

如何使用子文件获取整个文档的连续章节编号?

使用该subfiles包时,每个子文件都从 1 开始编号。如何才能获得整个文档的连续编号?

答案1

使用refcountxr(或者xr-hyper如果您在主文件中使用 hyperref) 包,您可以从主文档中自动检索正确的章节编号(或您想要的任何计数器)。

主文本

\documentclass{book}

\usepackage{refcount}
\usepackage{xr}
\usepackage{subfiles}

\begin{document}

\chapter{title}

\chapter{title}

\subfile{document}

\end{document}

文档.tex

\documentclass[main]{subfiles}

\ifSubfilesClassLoaded{
  \externaldocument[main-]{main}
  \setcounterref{chapter}{main-chap:bla}
  \addtocounter{chapter}{-1}
}{}

\begin{document}

\chapter{bla}
\label{chap:bla}

...

\end{document}

答案2

这种方法并不完全可取,因为它可能会破坏事物。

您可以使用以下方式指定要在子文件中使用的编号\setcounter{chapter}{*insert-number-here*}

比如正如你所说,默认子文件总是从 1 开始。如果你希望它从 2 开始编号,那么在\chapter{Your Chapter}写入之前\setcounter{chapter}{1}

有关更多信息,请参阅此帖子 -章节编号从 2 开始,而不是 1

相关内容