在文本中引用附录对象为“A.1”,而不是“附录 A.1”

在文本中引用附录对象为“A.1”,而不是“附录 A.1”

考虑使用其他文章包,并涉及附录:

\documentclass{elsarticle}

\begin{document}

... briefly explained in~\ref{sec:subAppendix}

\appendix
\section{Appendix}
\subsection{Sub-appendix}
\label{sec:subAppendix}

\end{document}

当在文中引用此附录对象时:

... briefly explained in~\ref{sec:subAppendix}.

分配给对象的编号上印有“附录”字样,如下所示:

... briefly explained in Appendix A.1.

我们怎样才能抑制/删除“附录',并使附录对象如下所示?:

... briefly explained in A.1.

答案1

elsarticle定义\thesection\appendixname \Alph{section}在内\appendix——因此,\thesubsection扩展为\appendix \Alph{section}.\arabic{subsection},最终为Appendix A.1等等。

虽然这对于排版来说可能没问题,但引用可能会变得乏味和冗长。

\p@subsection通过首先吞噬内容并重新注入纯净物来重新定义\Alph{section}.\arabic{subsection}将会删除参考文献。

https://tex.stackexchange.com/a/397724/31729采取类似的方法。

\thesection另一种可能性是针对附录进行细化。

\documentclass{elsarticle}

\makeatletter
\def\@gobbleappendixname#1\csname thesubsection\endcsname{\Alph{section}.\arabic{subsection}}
\renewcommand{\p@subsection}{\@gobbleappendixname}
\makeatother

\begin{document}



... briefly explained in~\ref{sec:subAppendix}

\appendix
\section{Appendix}

\subsection{Sub-appendix} 

\label{sec:subAppendix}

\end{document}

在此处输入图片描述

关于原文作者的抱怨:

\documentclass{elsarticle}


\makeatletter
\def\@gobbleappendixname#1\csname thesubsection\endcsname{\Alph{section}.\arabic{subsection}}
\g@addto@macro{\appendix}{\renewcommand{\p@subsection}{\@gobbleappendixname}}
\makeatother



\begin{document}

\section{Foo} \label{firstsection}

\subsection{Foo subsection} \label{foosubsection}

... briefly explained in~\ref{sec:subAppendix} or in \ref{firstsection} or in \ref{firstappendixsection} or in \ref{foosubsection}

\appendix




\section{Appendix} \label{firstappendixsection}

\subsection{Sub-appendix} 

\label{sec:subAppendix}

\end{document}

相关内容