получить ширину (в пт) блока

получить ширину (в пт) блока

Я бы получил ширину (то есть измерение) строки в поле. Мне нужно знать ширину \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.

Связанный контент