获取框的宽度(以 pt 为单位)

获取框的宽度(以 pt 为单位)

我将获取框中字符串的宽度(即尺寸)。我需要知道的宽度\hphantom{some text},以便将其用于 tikz 图片,例如,\draw (0,0)--(\mylen,0);它表示与字符串宽度相同的线some text

答案1

如果框中只有常规文本,那么 TikZ 也可以测量它,而这正是您无论如何都要手动执行的操作。它只是使用自己的临时框进行测量。但\textbf等等东西不太好用。所以请谨慎使用。

\begin{tikzpicture}
\pgfmathsetmacro\mylen{width("some text")}
\node[anchor=west,inner sep=0] {some text};
\draw[red,thick] (0,0) -- (\mylen pt,0);
\end{tikzpicture}

哦,height还有用。

在此处输入图片描述

答案2

在前言中声明一个新框(例如)。将您的对象放入框内。然后您可以访问框的宽度和高度。

\newsavebox\IBox% declare a box
\savebox\IBox{some text}% put an object inside the box
% other codes...
\draw (0,0) -- (\wd\IBox,\ht\IBox) node {\usebox\IBox};% access the width, height of the box and make use of the box.

答案3

calc包提供了\widthof{some text}可以用来测量特定字符串宽度的命令(这里:一些文字)。您可以像在 LaTeX 中使用其他长度一样使用它,例如2cm

相关内容