LaTeX 检测未找到图像并用文本替换

LaTeX 检测未找到图像并用文本替换

可能重复:
如果文件丢失是否使用“默认”图形?

我在数学课上使用 LaTeX 记笔记。当教授画出一幅图时,我会快速记在笔记本上,稍后再记下来。

目前,我先添加一行,然后将其注释掉。这样,代码就可以编译,但我仍然记得图片放在哪里。然而,有时我会忘记注释掉该行。\includegraphics{file}

我更希望有一个命令可以查找文件,如果找到则显示,如果找不到则显示一条消息(“占位符文件”),而不是停止编译。

有什么办法可以做到这一点?

答案1

您可以使用包[demo]中的选项,这将允许您对尚不存在的文件graphicx使用该命令——这将使您免于注释掉它们。然后,一旦您有了图形文件,您就可以简单地删除该选项。\includegraphics{}[demo]

另一个选择是用来\IfFileExists检查文件是否存在,并使用\missingfigure来自包裹todonotes

在此处输入图片描述

如果您不想使用附加包,您可以只绘制自己的符号来表示缺失的图形。

进一步增强:

  • 这确实要求您指定准确的文件名。这可以得到增强以复制\includegraphics包的行为。

代码:

\documentclass{article}
\usepackage{graphicx}
\usepackage{todonotes}

\newcommand\MyIncludeGraphics[2][]{%
    \IfFileExists{#2}{%
        \includegraphics[#1]{#2}%
    }{%
        \missingfigure[figwidth=7.0cm]{Missing #2}%
    }%
}%

\begin{document}
    \MyIncludeGraphics[width=5.0cm]{images/EiffelWide.jpg}%
    \MyIncludeGraphics{graphicFileName.jpg}%
\end{document}

相关内容