为了将所有章节编号显示为罗马数字,我使用
\renewcommand\thechapter{\Roman{chapter}}
因此,例如第四章,到处都是“第四章”。
是否可以将数字显示为阿拉伯数字仅有的引用章节时使用\ref{...}
?
使用上面的例子,\ref{chapter-four}
结果是“第 4 章”而不是“第 IV 章”。
答案1
修补\@makechapterhead
打印\Roman{chapter}
而不是\thechapter
允许您使用罗马数字格式化章节标题,但文本内的引用仍然是阿拉伯语:
\documentclass{book}
\usepackage{etoolbox}% http://ctan.org/pkg/etoolbox
\makeatletter
\patchcmd{\@makechapterhead}% <cmd>
{\thechapter}% <search>
{\Roman{chapter}}% <replace>
{}{}% <success><failure>
\makeatother
\begin{document}
%\tableofcontents
\chapter{A chapter}\label{chap-label}
See Chapter~\ref{chap-label}.
\end{document}
\@chapter
请注意,目录内的编号也将是阿拉伯数字。要更改此设置,需要对进行修补(也包含在\makeatletter
-\makeatother
对中):
\patchcmd{\@chapter}% <cmd>
{\numberline{\thechapter}}% <search>
{\numberline{\Roman{chapter}}}% <replace>
{}{}% <success><failure>