简单的问题。我想这样做:
\newcommand{\scatterplotwidth}{0.5\linewidth}
....
\includegraphics[width=0.9\scatterplotwidth]{myfig}
没有 0.9 也可以。有没有办法让命令变量乘以 0.9?
答案1
您可以定义为维度参数,通过\scatterplotwidth
加载一小部分电流\linewidth
\newcommand{\scatterplotwidth}{\dimexpr0.5\linewidth\relax}
然后\scatterplotwidth
在需要长度的任何地方都是合法的,例如
\includegraphics[width=0.9\scatterplotwidth]{myfig}
顺便说一下,建议
\newlength{\scatterplotwidth}
\setlength{\scatterplotwidth}{0.5\linewidth}
不会给出相同的结果,因为在执行时的值\scatterplotwidth
会被固定为的大小。\linewidth
\setlength
基于长度参数的不同策略是定义一个新命令:
\newlength{\scatterplotwidth}
\newcommand{\scatterplot}[2][1]{%
\setlength{\scatterplotwidth}{0.5\linewidth}%
\includegraphics[width=#1\scatterplotwidth]{#2}%
}
将会被用作
\scatterplot{myfig}
或者
\scatterplot[0.9]{myfig}
在前一种情况0.5\linewidth
下,(当前的 \linewidth
) 将被使用,在后一种情况下,将应用缩放。