更改 Chapter 的 \autoref 名称

更改 Chapter 的 \autoref 名称

我正在尝试更改函数\autoref(来自 hyperref 包)用于章节的名称。默认情况下,它输出“第 X 章”(小写 c),但我希望它输出“第 X 章”(大写 c)。在我的文档中,我可以成功地将函数重新定义\chapterautorefname为其他内容,而不会生成警告或错误,但我分配给它的值似乎被忽略了。我也尝试过正常定义它(这很好地给出了一个已定义的错误)和重新定义\Chapterautorefname(这产生了一个很好的、尚未定义的错误)。

最小工作示例

\documentclass[12pt, a4paper, openany]{report}
\usepackage[english]{babel}         
\usepackage[utf8]{inputenc}         
\usepackage{hyperref}               

\renewcommand{\chapterautorefname}{Something}

% Document
\begin{document}
\chapter{One}
In \autoref{chap:two}...

\chapter{Two}
\label{chap:two}

\end{document}

生成的输出:

输出

答案1

该包babel支持多种语言,因此您必须将重新定义放入\extrasenglish

\documentclass[12pt, a4paper, openany]{report}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[colorlinks]{hyperref}

\addto\extrasenglish{%
  \renewcommand{\chapterautorefname}{Chapter}%
}

\begin{document}
\chapter{One}
In \autoref{chap:two}...

\chapter{Two}
\label{chap:two}
\end{document}

结果

这也解释了手动的hyperref

相关内容