是否有一种方法\cref
可以设置为在附录中的图表参考文献中添加前缀?
\documentclass{article}
\usepackage{appendix}
\usepackage{cleveref}
\usepackage{graphicx}
\begin{document}
\section{The first section}\label{sec:1}
\begin{figure}
\centering
\includegraphics[width=0.5\textwidth]{example-image-a}
\caption{}
\label{fig:MainBodyFig}
\end{figure}
This is a reference to \cref{fig:MainBodyFig} and another reference for \cref{fig:AppendixFig}
\begin{appendices}
\renewcommand{\figurename}{Supplementary Fig.}
\setcounter{figure}{0}
\section{Appendix}
\begin{figure}[h!]
\centering
\includegraphics[width=0.5\textwidth]{example-image-b}
\caption{}
\label{fig:AppendixFig}
\end{figure}
\end{appendices}
\end{document}
其结果是
我希望有这个自动功能,以便我可以在各节之间移动图形,而不必手动更改文本中的前缀。
答案1
您可以使用 定义新的交叉引用名称来实现所需的结果。然后可以使用just aftercrefname
将此新名称分配给图形环境,如下例所示。此方法还可以扩展到表格、部分……。crefalias
\begin{appendices}
\documentclass{article}
\usepackage{appendix}
\usepackage{cleveref}
\usepackage{graphicx}
\crefname{appendixfigure}{supplementary fig.}{supplementary fig.}
\begin{document}
\section{The first section}\label{sec:1}
\begin{figure}
\centering
\includegraphics[width=0.5\textwidth]{example-image-a}
\caption{}
\label{fig:MainBodyFig}
\end{figure}
This is a reference to \cref{fig:MainBodyFig} and another reference for \cref{fig:AppendixFig}.
\begin{appendices}
\renewcommand{\figurename}{Supplementary Fig.}
\crefalias{figure}{appendixfigure}
\setcounter{figure}{0}
\section{Appendix}
\begin{figure}[h!]
\centering
\includegraphics[width=0.5\textwidth]{example-image-b}
\caption{}
\label{fig:AppendixFig}
\end{figure}
\end{appendices}
\end{document}