\pagenumbering{roman} 在报告类中打印大写罗马数字

\pagenumbering{roman} 在报告类中打印大写罗马数字

我正在编写一份报告类文档。我希望文档开头的某些页面使用罗马小写数字编号,其余页面使用阿拉伯数字编号。我在所需位置使用了\pagenumbering{roman}和。这些代码运行良好,只是打印大写罗马数字而不是小写罗马数字。出了什么问题?(我是这里的新手,也不是英语母语人士,所以如果我的问题表述不正确,请原谅。)谢谢!\pagenumbering{arabic}\pagenumbering{roman}

MWE(不是那么“最小”;如果出现问题,我会完整地展示序言):

\documentclass[twoside,a4paper,11pt]{report}
\usepackage[english,spanish]{babel}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amsthm}
\usepackage{amssymb}
\usepackage{enumerate}
\usepackage{upgreek}
\usepackage{graphicx}
\usepackage{sidecap}
\usepackage{fullpage}
\usepackage[hypcap,font=small,labelfont=bf,labelsep=period]{caption}
\usepackage{floatrow}
\usepackage{afterpage}
\usepackage{chngcntr}
\usepackage{enumitem}
\usepackage{lscape}
\usepackage{booktabs}
\usepackage{float}
\usepackage{setspace} 
\usepackage{rotating}
\usepackage{tabularx}
\usepackage{ragged2e}
\usepackage{natbib}
\usepackage{csquotes}
\usepackage[nottoc]{tocbibind}

\counterwithout{footnote}{chapter}
\newcommand\blankpage{%
    \null
    \thispagestyle{empty}%
    \addtocounter{page}{-1}%
    \newpage}
\providecommand\phantomsection{}
\newcommand{\R}{\mathbb{R}}
\newcommand{\N}{\mathbb{N}}
\newcommand{\en}{\rightarrow}
\newcommand{\de}{\colon}
\newcommand{\id}{\textup{id}}

\newtheorem{teo}{Teorema}
\newtheorem{coro}[teo]{Corolario}
\newtheorem{lema}[teo]{Lema}
\newtheorem{prop}[teo]{Proposici\'on}
\newtheorem{conj}[teo]{Conjetura}
\theoremstyle{definition}
\newtheorem{defi}[teo]{Definici\'on}
\newtheorem{ejer}{Ejercicio}
\newtheorem{ejm}{Ejemplo}
\theoremstyle{remark}
\newtheorem{obs}[teo]{Observaci\'on}

\frenchspacing

\begin{document}
\begin{titlepage}
\centering
\vspace*{0.5cm}

A rather long and complex title...

\afterpage{\blankpage}
\end{titlepage}

\afterpage{\blankpage}
\thispagestyle{empty}

\begin{flushright}
\topskip0pt
\vspace*{\fill}

To some special person\\[50pt]

\vspace*{\fill}
\clearpage
\afterpage{\blankpage}

\thispagestyle{empty}
\vspace*{\fill}

Nice quote

\end{flushright}


\vspace*{\fill}
\clearpage

\pagenumbering{roman}
\tableofcontents
\clearpage

\topskip0pt
\vspace*{\fill}
\noindent {\large \bf Acknowledgments}\newline
\addcontentsline{toc}{chapter}{Acknowledgments}

Text

\vspace*{\fill}\newpage\null\newpage


\pagenumbering{arabic}
\chapter{First chapter}

\end{document}

答案1

它实际上不是大写罗马数字,而是小写罗马数字。此功能由 babel 触发spanish。以下内容足以重现该问题:

\documentclass{article}
\usepackage[spanish]{babel}
\begin{document}
hello I \makeatletter\@roman\c@page
\end{document}

输出:

在此处输入图片描述

部分1.3 修饰符手册babel显示您可以使用lcroman语言修饰符spanish来改变这种行为:

\documentclass{article}
\usepackage[spanish.lcroman]{babel}
\begin{document}
hello I \makeatletter\@roman\c@page
\end{document}

输出:

在此处输入图片描述

但请注意,spanish-babel软件包警告您小写罗马数字在西班牙语中是拼写错误:

<code>es-lcroman</code> - 软件包选项:作为最后一个回调,我们遇到了一些问题,并且值已确定,或者使用 <code>es-ucroman</code>,使用此软件包选项可以解密 LaTeX 的定义,尤其是西班牙语和小写的罗马数字,因为它们是错误的拼写。

相关内容