我正在设计一些东西,其中将所有实际图像放在一起比写作部分花费更多的时间,因此我使用包装器命令将\includegraphics
图像替换为测试方块,除非指定的文件存在,这样我就可以随时检查其他格式。
\newcommand{\includegraphicsmaybe}[1]{\IfFileExists{../Images/#1}{\includegraphics[width=\linewidth,valign=t]{#1}}{\includegraphics[width=\linewidth,valign=t]{test.jpg}}}
但是,我不知道如何将更多格式化参数传递给实际\includegraphics
命令,例如旋转此命令(而不是旋转所有命令),或者其他任何情况。我该怎么做?
答案1
有趣的是,处理关键字的顺序似乎很重要,而width=\linewidth
之前rotate
不是一个好主意。另一方面,你可以输入width
两次,第二次获胜。
\documentclass{scrartcl}
\usepackage[export]{adjustbox}
\usepackage{graphics}
\usepackage{duckuments}
\newcommand{\includegraphicsmaybe}[2][]{% #1 = optional keys, #2 = filename
\IfFileExists{#2}%
{\includegraphics[width=\linewidth,#1,valign=t]{#2}}%
{\includegraphics[width=\linewidth,#1,valign=t]{example-image-duck}}}
\setlength{\parindent}{0pt}
\begin{document}
\includegraphicsmaybe[width=0.5\linewidth]{example-image}\hfill
\includegraphicsmaybe[rotate=90, width=0.5\linewidth]{example-image}
\includegraphicsmaybe{test.jpg}
\end{document}