我正在使用forest
来制作带有选项的树forked edges
。我希望能够将其与 结合起来sn edges
。这是我的 MWE:
\documentclass[landscape]{article}
\usepackage[edges,linguistics]{forest}
\begin{document}
\begin{forest}
forked edges, for tree={font=\sffamily}
[ABC
[A1
[A2]
[A2]]
[B1]
[C1, sn edges
[C2]
[C2]]]
\end{forest}
\end{document}
因此,例如,我希望节点 C1 的子节点具有该sn edges
选项,但显然forked edges
开头的选项会强制整棵树具有该样式。
答案1
在我看来这确实很奇怪,但这个网站关心的是技术实施,而不是实施事物的智慧。
话虽如此,问题还是不太清楚。这只是我能想到的最好的解释。
如果我必须猜测您想要什么,而不是您说您想要什么,我猜您想要的是下面这样的东西。
\documentclass[border=10pt]{standalone}
\usepackage[edges,linguistics]{forest}
\forestset{%
declare boolean={fork me}{false},
fork my edges/.style={%
for tree={fork me},
before typesetting nodes={%
where fork me={forked edge}{},
},
},
fork me not/.style={%
fork me=false,
sn edges,
},
}
\begin{document}
\begin{forest}
fork my edges,
for tree={font=\sffamily}
[ABC
[A1
[A2]
[A2]]
[B1]
[C1, fork me not
[C2]
[C2]]]
\end{forest}
\begin{forest}
fork my edges,
for tree={font=\sffamily}
[ABC
[A1
[A2]
[A2]]
[B1]
[C1, for descendants={fork me not}
[C2]
[C2]]]
\end{forest}
\end{document}