\pgflowlevel{\pgftransformscale{}} 的功能与普通 tikz 比例相同吗?

\pgflowlevel{\pgftransformscale{}} 的功能与普通 tikz 比例相同吗?

我想知道以下内容。

有人制作了一个复杂的 tikz 图形(我们的大学徽标)。现在我遇到了麻烦,因为 latex 报告的宽度和高度不是“真实”的宽度和高度,而是一个非常小的盒子。

tikzpicture 环境的开始如下所示:

\begin{tikzpicture}%

\pgflowlevel{\pgftransformscale{#1}}%

\pgftransformscale{0.1}%

% Scaled smaller from the large logo
\begin{pgfscope}%

罪魁祸首似乎在 \pgflowlevel{} 行中。当我用正常比例替换此行时,如下所示:

\begin{tikzpicture}[scale=#1]%

\pgftransformscale{0.1}%

% Scaled smaller from the large logo
\begin{pgfscope}%

该徽标看起来呈现相同,只是宽度和高度现在正常。

除了弄乱报告的尺寸之外,lowlevel 命令和 tikz scale 命令之间有什么区别?如果没有,为什么有人要使用 lowlevel 命令?

答案1

\pgflowlevel将输入的变换应用于整个画布,而不仅仅是坐标。这意味着一切(包括文本和线宽)无需进一步处理即可缩放,当将转换应用于坐标时,文本保持不变,并且线宽会被处理,以便它们被统一缩放。

此行为的示例可以在 PGF/TikZ 手册(版本 2.0)的第 52.4 节中找到。

至于为什么徽标的创建者使用了这种方法:他希望统一调整线条粗细和文本大小,以便徽标在所有比例因子下看起来都一样。我不明白的\pgftransformscale{0.1}两个都代码片段和徽标渲染相同的事实。也许其中没有文本或线条粗细。

相关内容