使用 tikz-qtree 时,是否有一种(相对)简单的方法可以使 \edge[roof] 的宽度变窄?为了进行比较,我想让它更贴近文本,就像 pst-jtree 的 vartri 一样。下面是用于比较的屏幕截图;上面是 tikz-qtree 对 \edge[roof] 的默认行为,下面是我希望的宽度,这是 pst-jtree 对 vartri 的默认行为。
梅威瑟:
\documentclass{article}
\usepackage{pstricks}
\usepackage{pst-jtree}
\usepackage{tikz-qtree}
\begin{document}
\begin{tikzpicture}
\Tree
[.{} \edge[roof]; {a roof} ]
\end{tikzpicture}
\jtree
\!= {}(<vartri>{a roof}).
\endjtree
\end{document}
答案1
屋顶的大小由其上方节点的和决定inner sep
。outer sep
如果您使用命令明确引入节点,\node
则可以添加样式来调整这些值。
\documentclass{article}
\usepackage{tikz-qtree}
\tikzset{roof node/.style={inner sep=1pt}}
\begin{document}
\begin{tikzpicture}
\Tree
[.{} \edge[roof]; \node[roof node]{a roof}; ]
\end{tikzpicture}
\end{document}
或者,您可以针对所有节点或所有叶节点全局调整它们。
\documentclass{article}
\usepackage{tikz-qtree}
\tikzset{every leaf node/.style={inner sep=1pt}}
\begin{document}
\begin{tikzpicture}
\Tree
[.{} \edge[roof]; {a roof} ]
\end{tikzpicture}
\end{document}