是否可以通过引用文档中先前显示过的图形来显示它?

是否可以通过引用文档中先前显示过的图形来显示它?

例如,在第 1 页我的 tex 文件中我写入

\begin{figure}[ht]
    \begin{center}
        \includegraphics[scale=0.6]{Figure_1}
    \end{center}
    \caption{Figure 1}
    \label{fig:Figure1}
\end{figure}

但在第 10 页,我想再次显示该图,我还需要这样做吗

\begin{figure}[ht]
    \begin{center}
        \includegraphics[scale=0.6]{Figure_1}
    \end{center}
    \caption{Figure 1}
    \label{fig:Figure1}
\end{figure}

或者是否存在一些快捷方式,例如 \display{Figure_1} 或者我可以直接调用的东西,因为 Latex 已经知道 Figure_1 所引用的内容?

答案1

保存箱

您可以使用\savebox,但每次需要添加标题、标签和\begin{figure}/\end{figure}时都需要添加。这更灵活,但每次需要添加图像时都需要多做一些工作。希望您不需要多次包含同一张图片。

\documentclass[11pt]{article}
\usepackage{graphicx}
\newsavebox{\exampleFigure}
\savebox{\exampleFigure}{%
\includegraphics[scale=0.5]{example-image-a}%
}
\begin{document}
\begin{figure}[hbt]
  \centering
  \usebox{\exampleFigure}
  \caption{Example image}
\end{figure}

Some text\ldots

\begin{figure}[hbt]
  \centering
  \usebox{\exampleFigure}
  \caption{Example image}
\end{figure}

\end{document}

新命令

您也可以使用\newcommand,但您必须确保只引用一次,或者每次都为其创建一个新标签。有些编辑器会跟踪您的所有标签,而这样做将无法使编辑器跟踪它们。

\documentclass[11pt]{article}
\usepackage{graphicx}
\newcommand{\exampleFigure}[1]{%
\begin{figure}[hbt]
  \centering
  \includegraphics[scale=0.5]{example-image-a}
  \caption{Example image}
  \label{#1}
\end{figure}%
}
\begin{document}
\exampleFigure{fig:exampleFigureFirst}

Some text\ldots

\exampleFigure{fig:exampleFigureSecond}
\end{document}

在此处输入图片描述

相关内容