森林中的箭

森林中的箭

如何防止forest环境中的箭头与树元素重叠? 我希望箭头像红色的。

\documentclass[a4paper]{article}
\usepackage[margin=0.5in]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[linguistics]{forest}

\begin{document}

(2)\quad Where will the director order the actor to stand? \\

\begin{forest} for tree={calign=fixed edge angles, calign primary angle=-70, calign secondary angle=70}
[CP [DP$_i$ [where, roof, name=where in]]
    [C$'$   [C \\ will$_j$, name=will in]
            [TP [DP     [the director, roof]]
                [T$'$   [$t_j$, name=will out]
                        [vP [v \\ order, name=order in]
                            [VP [DP$_m$ [the actor, roof]]
                                [V$'$   [$t_k$, name=order out]
                                        [TP [PRO$_m$]
                                            [T$'$   [T \\ to]
                                                    [VP [V \\ stand]
                                                        [$t_i$, name=where out]]]]]]]]]]]
    \draw[->] (will out) to[out=-90, in=-90] (will in);
    \draw[->] (where out) to[out=-90, in=-90] (where in);
    \draw[->] (order out) to[out=-90, in=-90] (order in);
\end{forest}

\end{document}

答案1

正如评论中所建议的,可能最简单的方法就是尝试调整in/out角度和/或looseness箭头,看看哪条路径不会穿过 DP 并且看起来仍然没问题。

例如:

在此处输入图片描述

\documentclass[a4paper]{article}
\usepackage[margin=0.5in]{geometry}
%\usepackage[utf8]{inputenc}
\usepackage[linguistics]{forest}

\begin{document}
    
    (2)\quad Where will the director order the actor to stand? \\
    
    \begin{forest} for tree={calign=fixed edge angles, calign primary angle=-70, calign secondary angle=70}
        [CP [DP$_i$ [where, roof, name=where in]]
        [C$'$   [C \\ will$_j$, name=will in]
        [TP [DP     [the director, roof]]
        [T$'$   [$t_j$, name=will out]
        [vP [v \\ order, name=order in]
        [VP [DP$_m$ [the actor, roof]]
        [V$'$   [$t_k$, name=order out]
        [TP [PRO$_m$]
        [T$'$   [T \\ to]
        [VP [V \\ stand]
        [$t_i$, name=where out]]]]]]]]]]]
        \draw[->] (will out) to[out=-120, in=-120,looseness=1.5] (will in);
        \draw[->] (where out) to[out=-120, in=-90] (where in);
        \draw[->] (order out) to[out=-120, in=-120,looseness=1.5] (order in);
    \end{forest}
    
\end{document}

与问题本身无关:

如果您(2)\quad不仅要为此 MWE 进行硬编码,还要在文档中进行硬编码,我建议您切换到用于编号示例(和语言注释)的包。我个人最喜欢的是expex,但还有许多其他选项,例如linguexgb4ecovington

相关内容