根据法国印刷规则,章节标题必须使用大写罗马数字,章节引用必须使用小写罗马数字。使用我正在使用的 scrbook 修改章节标题很容易(我重新定义了chapterformat
),但我很难将章节引用转换为小写罗马数字。
我尝试使用它\usepackage{modroman}
来显示罗马数字。
不幸的是,类似的东西\textsc{\nblongRoman{\ref{chapter:lechapitre}}}
不起作用(我认为是因为它是一个计数器而不是数字)。有没有一些简单的方法可以将引用返回的数字显示为罗马数字?
笔记:标签当然是这样的:
\chapter{Le chapitre}
\label{chapter:lechapitre}
总结
我给某一章节贴了一些标签,如下所示:
\chapter{Le chapitre}
\label{chapter:lechapitre}
默认情况下voir le chapitre \ref{chapter:lechapitre}
返回:
“查看第二章”
我希望它显示为
“voir le chapitre ɪɪ”(小型大写罗马数字)
一些不起作用的示例:
\documentclass[12pt,
a4paper,
DIV=10,
headinclude=true,
footinclude=false,
chapterprefix=true
]{scrbook}
\NeedsTeXFormat{LaTeX2e}
\usepackage[T1]{fontenc}
\usepackage{hyperref}
\usepackage{polyglossia}
\setdefaultlanguage{french}
\begin{document}
\chapter{Le chapitre}
\label{chapter:lechapitre}
voir le chapitre \ref{chapter:lechapitre}
\end{document}
答案1
我们可以调整给出的答案这里来实现你想要的。
\documentclass[12pt,
a4paper,
DIV=10,
headinclude=true,
footinclude=false,
chapterprefix=true
]{scrbook}
\makeatletter
\protected\def\SCRomanChapter#1#2{#2}
\providecommand\@secondofthree[3]{#2}
\renewcommand*{\thechapter}{%
\SCRomanChapter{\textsc{\roman{chapter}}}{\Roman{chapter}}%
}
\labelformat{chapter}{\expandafter\@secondofthree#1}
\makeatother
\usepackage{hyperref}
\usepackage{polyglossia}
\setdefaultlanguage{french}
\begin{document}
\chapter{Le chapitre}
\label{chapter:lechapitre}
voir le chapitre \ref{chapter:lechapitre}
\end{document}