我想知道如何用 TikZ 创建一个节点,该节点的每一侧都有不同的内部分离/填充。
想象一下这样的事情:
\node [inner xsep=10pt, draw=blue, very thick, rectangle] (box) {Some Text in here};
\node [fill=blue, text=white] at (box.west) {\MySymbol}
现在,问题是文本太靠近我的符号——简单地增加“inner xsep”并不是一个好主意,因为它在文本节点的左侧看起来很尴尬。
关于如何增加框右侧填充的任何提示?
答案1
使用\hspace*
您可以手动控制填充:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node [inner xsep=10pt, draw=blue, very thick, rectangle] (a) at (0,0) {\hspace*{20pt}Some Text in here};
\node [inner xsep=30pt, draw=blue, very thick, rectangle] (d) at (0,-1) {Some Text in here\hspace*{-20pt}};
\node [inner xsep=10pt, draw=blue, very thick, rectangle] (b) at (0,-2) {Some Text in here\hspace*{20pt}};
\node [inner xsep=30pt, draw=blue, very thick, rectangle] (c) at (0,-3) {\hspace*{-20pt}Some Text in here};
\end{tikzpicture}
\end{document}
答案2
我认为更简洁的方法是使用 xshift 键。因此,您可以使用 xsep 定义框架的宽度,并使用 xshift 对齐它。