我尝试\heightof
在文档中使用,但 XeLaTeX 抛出错误。两个最小代码结束错误如下。Ubuntu 20.04 最新更新
\documentclass[14pt,a4paper]{extarticle}
\usepackage{calc}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node[minimum height=\heightof{A}]{A};
\end{tikzpicture}
\end{document}
ABD: EveryShipout initializing macros
! Undefined control sequence.
\pgfmath@dimen@ ...men@@ #1=0.0pt\relax \pgfmath@
l.6 \node[minimum height=\heightof{A}]{A};
UPD。粗体文本的高度为height("{\textbf{A}}")
。
答案1
\heighof
在 tikz 中不起作用,请使用其提供的函数。请参阅文档中的“数学表达式”部分。
\documentclass[14pt,a4paper]{extarticle}
\usepackage{calc}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node[minimum height=height("A")]{A};
\end{tikzpicture}
\end{document}
另外:minimum height
不描述节点内容的高度,即 TeX 框的高度,而是总高度:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node[draw,inner sep=0,minimum height=10pt] (A) {.};
\draw[red,<->] ([xshift=-2pt]A.south west) --++ (0,10pt);
\end{tikzpicture}
\begin{tikzpicture}
\node[draw,minimum height=10pt] (A) {.};
\draw[red,<->] ([xshift=-2pt]A.south west) --++ (0,10pt);
\end{tikzpicture}
\end{document}
答案2
该命令仅在包表达式\heightof
中有效。calc
您可以使用height{"A"}
,但这不会处理inner sep
,因此您应该将其添加到最小高度。
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node[draw,minimum height=height("A")+2*(\pgfkeysvalueof{/pgf/inner ysep})]{A};
\end{tikzpicture}
\begin{tikzpicture}
\node[draw,minimum height=height("A")+2*(\pgfkeysvalueof{/pgf/inner ysep})]{x};
\end{tikzpicture}
\begin{tikzpicture}[inner sep=1pt]
\node[draw,minimum height=height("A")+2*(\pgfkeysvalueof{/pgf/inner ysep})]{A};
\end{tikzpicture}
\begin{tikzpicture}[inner sep=1pt]
\node[draw,minimum height=height("A")+2*(\pgfkeysvalueof{/pgf/inner ysep})]{x};
\end{tikzpicture}
\end{document}