控制tikz标签中的行距

控制tikz标签中的行距

我想控制 tikz 中节点标签的行距。在我的示例中,行距太大(两条线之间),我想减小它。我已经阅读过有关节点内部行距的内容,但没有阅读过有关节点标签内部行距的内容。

谢谢,J。

\documentclass{scrartcl}

\usepackage{tikz}
\usetikzlibrary{arrows,automata,positioning}
\usepackage{amssymb}
\usepackage{amsfonts}
\usepackage{amsmath}

\begin{document}

\begin{tikzpicture}[>=stealth',shorten >=1pt,auto,node distance=2cm]  

  \node[state,accepting][label={[align=center, inner sep=1ex]below: {\tiny{parameter:10}\\ \tiny{if $s_1=1$} }}] (q0)      {$s_0$};

\end{tikzpicture}
\end{document}

答案1

text width(您的示例在此处引发了一个错误,但在标签中添加即可修复该问题。)

你用\tiny错了,它应该像 那样使用{\tiny ..},而不是\tiny{...},即它是一个影响后续文本的开关,而不是一个接受参数的宏。话虽如此,我建议改为添加font=\tinylabel选项中。这也使行距更合理。

为了进一步控制行距,您可以使用可选参数\\,例如\\[1cm]添加额外的 1 厘米垂直空间。

另外,使用align=flush center以避免第二条线的拉伸。

\documentclass[border=4mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows,automata,positioning}
\usepackage{amssymb}
\usepackage{amsfonts}
\usepackage{amsmath}
\begin{document}
\begin{tikzpicture}[>=stealth',shorten >=1pt,auto,node distance=2cm]  
\node[state,accepting,label={[align=flush center, inner sep=1ex, text width=1.5cm,font=\tiny]below: parameter:10\\ if $s_1=1$ }] (q0)      {$s_0$};

\end{tikzpicture}
\end{document}

enter image description here

相关内容