Titlesec 和 \ref 不匹配

Titlesec 和 \ref 不匹配

我正在使用该titlesec包来修改章节的编号方式。问题是,当我标记它并稍后引用时,引用将使用标准章节编号。

这是一个简单的例子:

\documentclass{article}
\usepackage{titlesec}
\titleformat{\section}{\normalfont\large\bfseries}{\Alph{section}.}{0.3em}{}

\begin{document}
  \section{Section}\label{section}

  \ref{section} $\leftarrow$ wrong!
\end{document}

结果是:

在此处输入图片描述

(当然,预期的行为是引用产生“A”,而不是“1”)。

我查看了 Stack Exchange 建议的“类似问题”的文档titlesec,但找不到答案。如果答案很明显而我却错过了,请原谅我。

答案1

该命令\ref访问 提供的计数器表示\thesection。因此,您必须更改此命令的含义,而不是\Alph{section}在 中使用\titleformat

\documentclass{article}
\usepackage{titlesec}

\renewcommand\thesection{\Alph{section}}
\titleformat{\section}
  {\normalfont\large\bfseries}
  {\thesection.}
  {0.3em}
  {}

\begin{document}
  \section{Section}\label{section}

  \ref{section} $\leftarrow$ right!
\end{document}

在此处输入图片描述

相关内容