如何让定理在附录中以定理A.1,定理A.2等形式显示?
解决方案
\renewcommand*{\thetheorem}{\mbox{\textrm A.\arabic{theorem}}}
不适合,因为使用hyperref
包的链接错误(链接到定理 1,而不是定理 A.1)...
答案1
假设你正在使用标准类,无需进一步的封装,一个解决方案是在声明时book
重新定义:\@thmcounter
\appendix
\usepackage{etoolbox}
\makeatletter
\pretocmd{\appendix}{\def\@thmcounter#1{\noexpand\Alph{#1}}}{}{}
\makeatother
这是一个最小的工作示例:
\documentclass{book}
\newtheorem{theorem}{Theorem}[chapter]
\usepackage{etoolbox}
\makeatletter
\pretocmd{\appendix}{\def\@thmcounter#1{\noexpand\Alph{#1}}}{}{}
\makeatother
\usepackage{hyperref}
\begin{document}
\chapter{Lorem}
See \autoref{thm:2}
\begin{theorem}\label{thm:1}
Hello world!
\end{theorem}
\appendix
\chapter{Ipsum}
See \autoref{thm:1}
\begin{theorem}\label{thm:2}
Hello world!
\end{theorem}
\end{document}
这使: