我想在绘制 tikz 节点之前知道它的高度,所以我找到了一个 pgf 命令名 \pgfmathheight,它可以给我一个字符的高度(以 pt 为单位)。但实际上,当我尝试使用某个字符(如“y”)时,高度似乎不正确。我使用以下代码进行测试:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\pgfmathsetmacro\mylenHght{height("y")};
\pgfmathsetmacro\mylenWdht{width("y")};
\node[draw=blue,inner sep=0] (TestHeightNode) at (0,0) {y};
\draw[draw=red] let %
\p1 = (TestHeightNode.south west)%
in (\x1,\y1) rectangle (\x1+\mylenWdht pt,\y1+\mylenHght pt);
\end{tikzpicture}
\end{document}
答案1
因此,根据您的所有建议,代码现在如下所示:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\pgfmathsetmacro\mylenHght{height("y")+depth("y")};
\pgfmathsetmacro\mylenWdht{width("y")};
\node[draw=blue,inner sep=0] (TestHeightNode) at (0,0) {y};
\draw[red] (TestHeightNode.south west) rectangle +(\mylenWdht pt,\mylenHght pt);
\end{tikzpicture}
\end{document}
我的问题已经解决了,谢谢大家