Latex 在节标题中使用罗马数字时出错

Latex 在节标题中使用罗马数字时出错,latex,roman-numerals,Latex,Roman Numerals,我想用罗马数字来列举latex文档中的一些部分 我使用:\MakeUppercase{\romannumeric 2}来创建数字。这在普通文本中效果很好,但是如果我尝试在节或小节命令中使用它,我会得到一个“未定义的控制序列”错误,即使它似乎在节标题中正确显示了数字 显然问题出在\MakeUppercase命令上,因为只有\romanumeric 2命令没有给出错误 我还试图定义一个具有相同效果的\newcommand 有人知道为什么会这样吗 编辑:在创建了一个最小的可复制示例后,我发现问题与hy

我想用罗马数字来列举latex文档中的一些部分

我使用:
\MakeUppercase{\romannumeric 2}
来创建数字。这在普通文本中效果很好,但是如果我尝试在小节命令中使用它,我会得到一个“未定义的控制序列”错误,即使它似乎在节标题中正确显示了数字

显然问题出在
\MakeUppercase
命令上,因为只有
\romanumeric 2
命令没有给出错误

我还试图定义一个具有相同效果的
\newcommand

有人知道为什么会这样吗

编辑:在创建了一个最小的可复制示例后,我发现问题与
hyperref
包有关

\documentclass[12pt,a4paper]{report}
\usepackage[utf8]{inputenc}

\usepackage{hyperref}

\newcommand{\RomanNumeralCaps}[1]{\MakeUppercase{\romannumeral #1}}

\begin{document}

\chapter{Some chapter}
\section{Some section}
\subsection{Experiment \MakeUppercase{\romannumeral 1}}
\MakeUppercase{\romannumeral 1}
\RomanNumeralCaps{2}

\end{document}

您可以为pdf书签提供备选字符串:

\documentclass[12pt,a4paper]{report}
\usepackage[utf8]{inputenc}

\usepackage{romannum}% for approach #1 and #2
\usepackage{biblatex}% for approach #3
\usepackage{hyperref}


\begin{document}

\chapter{Some chapter}
\section{Some section}
\subsection{Experiment \texorpdfstring{\Romannum{1}}{I}}

or

\subsection[Experiment II]{Experiment \Romannum{2}}

or

\subsection{Experiment \RN{3}}

However with this approach the III will be replaced by 3 in the pdf bookmarks

\end{document}

请做一个我们可以编译来重现你的问题,而不仅仅是这样的代码片段感谢你指出它已经帮助缩小了问题的范围感谢这项工作。为了完整起见,
hyperref
的问题以相同的方式解决[