我绘制了一个矩形 r,其大小是某个单词 w 的 4 倍;我希望单词 w 的大小是其初始大小的 3 倍(并绘制在 r 中)。我不知道如何获取乘数,本例中为 3,即我不知道如何修改行起始宽度 \draw 中的“{\textbf{abc}}”。
\documentclass{minimal}
\usepackage{calc}
\usepackage{tikz}
\begin{document}
\newlength{\la}
\newlength{\ha}
\setlength{\la}{\widthof{\textbf{abc}}*\real{4.0}}
\setlength{\ha}{\totalheightof{\textbf{abc}}*\real{4.0}}
\begin{tikzpicture}
\draw (0,0) rectangle (\la,\ha) node[pos=.5] {\textbf{abc}};
\end{tikzpicture}
\end{document}
答案1
\scalebox{3}{\textbf{abc}}
,例如
\documentclass{minimal}
\usepackage{calc}
\usepackage{tikz}
\begin{document}
\newlength{\la}
\newlength{\ha}
\setlength{\la}{\widthof{\textbf{abc}}*\real{4.0}}
\setlength{\ha}{\totalheightof{\textbf{abc}}*\real{4.0}}
\begin{tikzpicture}
\draw (0,0) rectangle (\la,\ha) node[pos=.5] {\scalebox{3}{\textbf{abc}}};
\end{tikzpicture}
\end{document}
答案2
我本来不打算发布这个,但你似乎遇到了错误。这是我上面评论中的代码:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\pgfmathsetmacro{\la}{4*width("\textbf{abc}")}
\pgfmathsetmacro{\ha}{4*height("\textbf{abc}")}
\begin{tikzpicture}
\draw (0,0) rectangle node[font=\bfseries,scale=3] {abc}
(\la pt,\ha pt);
\end{tikzpicture}
\end{document}
可以说它更钾Zy,它使用 pgf 函数width
来height
计算文本的宽度和高度,并scale
缩放文本。