![如何在 tikz 节点的两侧添加分隔符?](https://linux22.com/image/292424/%E5%A6%82%E4%BD%95%E5%9C%A8%20tikz%20%E8%8A%82%E7%82%B9%E7%9A%84%E4%B8%A4%E4%BE%A7%E6%B7%BB%E5%8A%A0%E5%88%86%E9%9A%94%E7%AC%A6%EF%BC%9F.png)
这是一个似乎无法正确显示的简单文档:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}
\tikz \node[matrix of nodes] { |[left delimiter=(, right delimiter=)]| x \\ };
\end{document}
本文档呈现为。当我仅包含左分隔符或右分隔符时,它似乎可以正常工作;即我分别得到
和
。我怎样才能让这两个分隔符都出现在适当的位置?
答案1
我建议采用以下方法。它使用蒂克兹-styles 并保持放置节点的代码整洁。
使用该outer sep
选项,您可以微调right delimiter
和的位置left delimiter
。您还可以使用draw
此处的选项显示节点的大小以调试样式。
我更喜欢这样做,因为您可以通过大量微调来定义您的样式,同时保持\matrix
/\node
放置代码的整洁。
下面的示例包含一些额外的outer sep
s 来显示此选项对渲染图像的影响。
\documentclass[border=6mm, 11pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}
\tikzset{
braces/.style = {
outer sep=-1pt,
left delimiter=(,
right delimiter=),
align=center,
},
}
\begin{tikzpicture}
\matrix {
\node [braces] (a) {A}; &
\node [braces, outer sep=0pt] (b) {B}; \\
\node [braces, outer sep=5pt] (c) {C}; &
\node [braces, outer sep=-2pt] (d) {D}; \\
};
\end{tikzpicture}
\end{document}
渲染图像: