假设我们有一些简单的代码来在文本后面显示text node
彩色。fill
最小工作示例(MWE):
\documentclass[tikz,border=5mm]{standalone}
\begin{document}
\begin{tikzpicture}
\draw [fill=red] (0,0) -- (1,0) -- (1,1) -- (0,1) --cycle node [above right, xshift=0.25mm,yshift=2.5mm, fill=white] {Text};
\end{tikzpicture}
\end{document}
结果截图:
问题说明:
fill
如您所见,文本两侧有大量空白。在某些情况下,这些空白的空间范围过大。
如何减少白色范围fill
而不丢失文本居中对齐?我已经尝试过text width=XXXX
,align=center
但这只会改变右侧的空白,而文本将不再居中对齐。
如何才能减少fill
左侧和右侧的范围,甚至是顶部和底部的范围?
答案1
一种更简单的方法:
\documentclass[tikz,border=5mm]{standalone}
\begin{document}
\begin{tikzpicture}
\node at (0,0) (a) {};
\draw [fill = red] (-0.5,-0.5) rectangle (0.5,0.5);
\node[draw = none,fill=white, inner sep = 0pt] at (a.center){Text};
\end{tikzpicture}
\end{document}
这会给你:
当您绘制更复杂的图表时,这些类型的预定义节点定义会变得方便。
附言:谢谢您的@Vinzza
善意提示!
正如@Vinzza
前面提到的,您可以尝试inner sep = <size>
调整间距。