所含章节最后一页的自定义页码失效

所含章节最后一页的自定义页码失效

TL;DR 当我将附录添加到主报告中时,每个附录的最后一页上的自定义页码会失败。我该如何修复?

我正在写一份带有附录的长篇报告。我希望序言使用罗马数字页码,正文使用阿拉伯数字,自定义页码在附录中,格式为A1, A2,...。一切正常,只是每个附录的最后一页都恢复为标准阿拉伯数字,例如3而不是A3。问题似乎与我从单独的文件中包含这些附录有关。

在以下 MWE 中,主文件中的两个附录编号正确,但包含的文件编号不正确:

主文件

\documentclass{report}

\usepackage{standalone}         % Allow included files to also be compiled standalone
\usepackage{etoolbox}

\usepackage{lipsum}             % For testing

\begin{document}
    \pagenumbering{roman}
    \pagestyle{plain}

    \tableofcontents

    \clearpage
    \pagenumbering{arabic}

    \lipsum

    \appendix
    \pretocmd{\chapter}{%
      \clearpage
      \pagenumbering{arabic}%
      \renewcommand*{\thepage}{\thechapter\arabic{page}}%
    }{}{}

    \chapter{First appendix}
    \lipsum

    \include{include}

    \chapter{Third appendix}
    \lipsum
\end{document}

包括.tex

\documentclass{report}
\begin{document}
    \chapter{Included appendix}
    \lipsum
\end{document}

我已经尝试过解决方案页面样式为普通。​​章节最后一页没有页码。它只是给了我未定义的控制序列错误。

如何确保包含的文件最后一页的页码与其他附录页面的格式相同?

答案1

standalone 添加了额外的分组,因此您对 \thepage 的重新定义会丢失。将其直接移到 \appendix 后面,并使用 setcounter 而不是 pagenumbering 重置页码:

\documentclass{report}

\usepackage{standalone}         % Allow included files to also be compiled standalone
\usepackage{etoolbox}

\usepackage{lipsum}             % For testing

\begin{document}
    \pagenumbering{roman}
    \pagestyle{plain}

    \tableofcontents

    \clearpage
    \pagenumbering{arabic}

    \lipsum

    \appendix
    \renewcommand*{\thepage}{\thechapter\arabic{page}}%
    \pretocmd{\chapter}{%
      \clearpage
      \setcounter{page}{1}%
    }{}{}

    \chapter{First appendix}
    \lipsum

    \include{include}

    \chapter{Third appendix}
    \lipsum
\end{document}

相关内容