![垂直移动内联 tikz 节点以与周围文本的基线对齐](https://linux22.com/image/370839/%E5%9E%82%E7%9B%B4%E7%A7%BB%E5%8A%A8%E5%86%85%E8%81%94%20tikz%20%E8%8A%82%E7%82%B9%E4%BB%A5%E4%B8%8E%E5%91%A8%E5%9B%B4%E6%96%87%E6%9C%AC%E7%9A%84%E5%9F%BA%E7%BA%BF%E5%AF%B9%E9%BD%90.png)
我正在尝试将 tikz 节点合并到正在运行的文本中,但让它们与周围的文本很好地对齐。我的 MWE 是:
% !TEX program = xelatex
\documentclass{scrbook}
\usepackage{tikz}
\begin{document}
Some text \tikz \node[rectangle,rounded corners=0.5mm,text=white,fill=black!65,inner sep=2pt] {\scriptsize{}foo}; more text.
\end{document}
得出的结果为:
我想将节点向下移动,以便“foo”的基线与周围文本的基线对齐。关于相对于其他节点对齐的信息很多,但实际上我需要做的就是将其垂直向下移动一定量,但我不知道该怎么做。
对于我来说,将整个节点向下移动以使基线对齐的最简单/最佳方法是什么?
答案1
使用\tikz[baseline]
和anchor=base
作为节点的选项或tcolorbox
使用box align=base
\documentclass{scrbook}
\usepackage[most]{tcolorbox}
\usepackage{tikz}
\begin{document}
Some text \tikz[baseline]{%
\node[rectangle,rounded corners=0.5mm,text=white,fill=black!65,inner sep=2pt,anchor=base] (A) {\scriptsize{}foo};} more text.
Some text \tcbox[enhanced,frame hidden,box align=base,nobeforeafter,left=0pt,right=0pt,top=0pt,bottom=0pt,arc=0.5mm,fontupper=\scriptsize,colupper=white,,colback=black!65]{foo} more text
\end{document}