使用 \setkeys{Gin} 设置默认比例值不起作用

使用 \setkeys{Gin} 设置默认比例值不起作用

我想让我的所有图形稍微小一点,并尝试全局设置scale-value ,但更改工作正常却没有效果。\includegraphics\setkeys{Gin}widthscale

\documentclass{scrartcl}

\usepackage[demo]{graphicx}% use some grafic from you computer and switch of demo
    \setkeys{Gin}{width=0.75\textwidth}% works fine
%   \setkeys{Gin}{scale=0.5}% doesn't work

\begin{document}
Nulla facilisi. Sed aliquam nulla quis nunc porttitor pellentesque. Nunc.
Nulla facilisi. Sed aliquam nulla quis nunc porttitor pellentesque. Nunc.
\begin{figure}
    \centering
    \includegraphics{somegraphic}
\end{figure}
\end{document}

我知道制作正确尺寸的图形更好,但是我使用的是矢量图形,在这种情况下,稍微缩放一下它们就可以了。

顺便问一下:是否有一个图像可以在大多数 TeX 系统中用于创建 MWE

答案1

width设置graphicx一个宏,该宏在其余范围内保持有效,而键scale修改用于累积当前图像所需代码的内部令牌寄存器。此令牌寄存器在内部代码开始时重置\includegraphics,因此任何先前的更改都会丢失。无论如何,键的顺序以及它们放入令牌寄存器的代码非常有意义,因此全局设置不起作用。临时(!)令牌寄存器首先必须正确初始化。

graphics/x为我的包做了很多研究,它使用相同的技术,如果使用该选项,adjustbox大多数键也可以用于。我计划提供宏来允许这种全局设置。然后,这些宏将简单地存储键并将其插入到或键的列表中。同时,您可以使用如下代码:\includegraphicsexport\includegraphics\adjustbox

\newcommand{\globalinclgrphkeys}{scale=0.5}

% ...

\expandafter\includegraphics\expandafter[\globalinclgrphkeys,<other options]{<file>}

或者直接:

\newcommand{\myincludegraphics}[2][]{%
    \includegraphics[scale=0.5,#1]{#2}%
}

2011年10月31日更新:

使用 2011/10/30 的新版本 0.7,您可以使用为所有宏\adjustboxset{scale=0.5}设置全局比例键。然后使用而不是通常的。\adjustbox\adjustimage{<other options>}{<filename>}\includegraphics[<options>]{<filename>}

相关内容