gpt4 book ai didi

latex - PGF(Latex)中求整图宽度的方法

转载 作者:行者123 更新时间:2023-12-01 12:00:09 24 4
gpt4 key购买 nike

我有一个 latex 宏,它根据给定的参数使用 PGF 和 Tikz 绘制图片。绘制的图片宽度取决于这些参数。

PGF 会自动计算绘制的任何图片的最终宽度,因此用户不必明确设置它(例如,在图片环境中使用 latex 构建时)。

但是我需要知道将要绘制的图片的宽度。因为我可以像 PGF 那样计算它,但这将是相当多的工作(很多 if 语句......)。有没有办法询问 PGF 要绘制的图片的宽度是多少(我期望的一些命令)?在 tikzpicture 环境中还是在它之后?感谢您的帮助。

最佳答案

我可能会做的是将 tikzpicture 环境放在一个盒子里,然后找到盒子的宽度:

\setbox0=\vbox{\hbox{%
\begin{tikzpicture}
% ...
\end{tizpicture}%
}}
The width of the following picture is {\the\wd0}.
\box0

请注意,在您运行\box0 之后,该框将被插入到文档中并且其内容将被销毁;因此,您需要在执行此操作之前查询框的宽度。如果你想保存宽度,你可以用 \dimen0=\wd0 将它存储在一个维度寄存器中;或者,您可以使用 \copybox0,它会插入框但不会破坏它(尽管这可能会泄漏内存)。

此外,之前玩过其中一些,我发现仅使用 \vbox 会导致框始终是页面的整个宽度(如果您考虑一下,感觉);但是,仅使用 \hbox 会由于某种原因导致拆箱失败(它似乎是一只已知的哈巴狗)。然而,像这样使用两者是可行的——我正在使用非常像这样的东西将 TikZ 图片渲染为大小恰到好处的 PDF 文件。

关于latex - PGF(Latex)中求整图宽度的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2617342/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com