要包含到另一个文档(main.tex)中的文档(supp.tex)具有以“S”开头的索引样式:
\renewcommand{\thefigure}{S\arabic{figure}}
添加到主文本后如何保留这种命名风格?
它包含在standalone
包中,主要文本的 MWE:
\documentclass[review, authoryear]{elsarticle}
\usepackage{standalone}
\begin{document}
\include{supp}
\end{document}
(比如main.tex中有图1、2、3,supp.tex中有图S1、S2、S3,将supp.tex包含到main.tex中之后,这些图就变成了图4、5、6,但是我想保留这些图的名称为图S1、S2、S3。)
答案1
figure
可以定义一个新的计数器,用于在包含之前存储计数器的旧值supp.tex
,并在退出包含之后恢复为之前的值和样式:
文件main.tex
:
\documentclass[review, authoryear]{elsarticle}
\usepackage[hidelinks, colorlinks, unicode]{hyperref}
\usepackage{standalone}
\begin{document}
\begin{figure}[h]
\centering
\includegraphics[width=.1\textwidth]{img1.jpeg}
\caption{test}
\label{fig:fig_1}
\end{figure}
Here, a test \hyperref[fig:fig_1]{Figure 1}, and a test for \hyperref[fig:fig_s1]{Figure S1}, and a test for \hyperref[fig:fig_2]{Figure 2}.
\newcounter{tmpfigure}
\setcounter{tmpfigure}{\value{figure}}
\input{supp}
\renewcommand{\thefigure}{\arabic{figure}}
\setcounter{figure}{\value{tmpfigure}}
\begin{figure}[h]
\centering
\includegraphics[width=.1\textwidth]{img1.jpeg}
\caption{test}
\label{fig:fig_2}
\end{figure}
\end{document}
文件supp.tex
:
\documentclass[review, authoryear]{elsarticle}
\usepackage{graphicx}
\usepackage[hidelinks, colorlinks, unicode]{hyperref}
\begin{document}
% add "S" before figure index and let hyperref recognize
\renewcommand{\thefigure}{S\arabic{figure}}
\renewcommand{\theHfigure}{S\arabic{figure}}
% index figure from 1
\setcounter{figure}{0}
\begin{figure}
\includegraphics[width = \textwidth]{figure/fmri}
\caption{For example}
\label{fig:fig_s1}
\end{figure}
\end{document}
结果是:
请注意,我替换\include
了\input
(并添加[h]
到环境figure
)以避免分页。