这是对我的问题的直接跟进在 tikz 环境中对齐项目符号。我基本上有与当时相同的问题,只是这一次,我需要将项目符号与在和itemize
之间绘制的箭头对齐。above
below
node
默认情况下,对齐显示如下:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{itemize}
\item
\begin{tikzpicture}[baseline = default]
\draw [very thick, ->] (0,0) -- (2,0);
\node[above] at (1,0) {Text above};
\node[below] at (1,0) {Text below};
\end{tikzpicture}
\end{itemize}
\end{document}
下列的安德鲁·斯旺的回答,我尝试命名我的绘图(例如(myarrow)
)并将基线设置为其基线,但这不起作用 - 我大概只能命名节点。所以我创建了一个空节点,我将其命名为:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{itemize}
\item
\begin{tikzpicture}[baseline = (A.base)]
\draw [very thick, ->] (0,0) -- (2,0);
\node at (0,0) (A) {};
\node[above] at (1,0) {Text above};
\node[below] at (1,0) {Text below};
\end{tikzpicture}
\end{itemize}
\end{document}
但子弹在垂直方向上仍与箭头错位。我需要做什么才能将tikzpicture
环境的基线设置为箭头的底部?
编辑
在评论中建议在 tikz 环境中对齐项目符号作为-.5ex
基准,Kevin C 的回答这里建议使用相同的方法。虽然这很好地近似于完美的垂直对齐,但并没有完全达到。正如我在评论中指出的那样在 tikz 环境中对齐项目符号,近似效果的好坏取决于所使用的字体(这意味着需要手动调整每个文档的精确基线),在这种情况下,还可以看到对齐略有偏差。参见下面的 MWE(我后来手动添加了红色中线)。
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{itemize}
\item
\begin{tikzpicture}[baseline = -.5ex]
\draw [very thick, ->] (0,0) -- (2,0);
\node[above] at (1,0) {Text above};
\node[below] at (1,0) {Text below};
\end{tikzpicture}
\end{itemize}
\end{document}
答案1
我的理解是,项目项目符号通常.5ex
位于基线上方。因此,如果您希望箭头与项目符号完全对齐,只需将所有内容垂直向上移动此距离即可。
具体来说,您可以使用节点(A)
的基部作为箭头的起点,并添加.5ex
到上方和下方的节点。
平均能量损失
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{itemize}
\item %
\begin{tikzpicture}[baseline = (A.base)]
\node[inner sep=0pt] at (0,0) (A) {};
\draw [very thick, ->] ([yshift=.5ex]A.base) -- +(2,0);
\node[above] at (1,.5ex) {Text above};
\node[below] at (1,.5ex) {Text below};
\end{tikzpicture}
\end{itemize}
\end{document}