将 \ref 格式化为罗马数字?奇怪的错误

将 \ref 格式化为罗马数字?奇怪的错误

如何将\ref格式设置为罗马数字?

目前我有代码:

\newcommand{\appendixref}[1]{Appendix~\romannumeral 0\ref{#1}\relax}

这很有效……除非它不起作用。看看下面的图片:

同一段中同时存在有效和无效的示例

在 LaTeX 中其代码为:

A single state of the board is represented with a \inlinecode{BoardState} (see \textbf{\appendixref{BoardState}}) interface. A state contains all the relevant information about the current state of a board that makes it unique from another state of the board.. For the purpose of my application, I extended this to create an \inlinecode{AbstractBoardState} (see \textbf{\appendixref{AbstractBoardState}}) which contained a lot of the common code between the two types of \inlinecode{BoardState}

我认为它大约有 85% 的时间是有效的。我想要一个始终有效的解决方案,以及为什么它不是始终有效的可能解释。

为了提供更多背景信息,我有一个附录定义为以下环境:

\renewenvironment{appendix}[1][section]{
    \newcommand{\oldsection}{#1}
    \newcounter{oldsection}
    \setcounter{oldsection}{\value{#1}}
    \setcounter{#1}{0}
    \expandafter\renewcommand\csname the#1\endcsname{\roman{#1}}
}{
    \setcounter{\oldsection}{\value{oldsection}}
}

该环境的示例用法如下:

\begin{appendix}[subsection]
\section{Appendix}

\subsection{Tile.java} \label{Tile}
\javascript{tile/Tile}{Tagging interface for tiles}

\end{appendix}

这将生成一个附录部分,其中的附录使用罗马数字。罗马数字完美地显示在标题旁边,也显示在目录中,这正是我使用宏的\appendixref{Title}地方有时它不起作用。以下屏幕截图显示了如何为包含上述附录的文档生成目录。

在此处输入图片描述

相关内容