포리스트 2.1.5로 공간을 차지하지 않는 팬텀 노드 생성

포리스트 2.1.5로 공간을 차지하지 않는 팬텀 노드 생성

기본적으로 다음과 같은 질문입니다.숲: 공간을 차지하지 않는 팬텀 노드를 만드시겠습니까?하지만 거기에 제공된 솔루션은 포리스트 2.1.5에서는 작동하지 않습니다. 팬텀S가 공간을 차지하지 않았으면 좋겠어요. 기준선을 팬텀 노드로 설정해 보았지만 아무런 효과가 없었습니다.

\documentclass{article}
\usepackage{forest}
\useforestlibrary{linguistics}

\begin{document}
\noindent

This is some very informative text, that is very informative.\\
\begin{forest}
[\phantom{S}
  [S, no edge, baseline
        [NP,name=np11
                [he]]
        [VP, name=vp1
          [V,name=v1    [knows]]]]
  [S, no edge, name=s2
        [V, name=vcoord, no edge [and, name=and, no edge]]
        [VP
           [V,name=v2 [loves]]
           [NP, name=np22 [this record, roof]]]]]
\draw (s2.south)--(np11.north)
      (vp1.south)--(np22.north);
\draw[thick] (vcoord.south)--(v1.north)
             (vcoord.south)--(v2.north)
             (vcoord.south)--(and.north);
\end{forest}



\end{document}

답변1

해결책은 매크로 대신 phantom의 키를 사용하는 것입니다 . 그러면 S가 보이지 않게 됩니다.forest\phantom

\documentclass{article}
\usepackage[linguistics]{forest}

\begin{document}
\noindent

This is some very informative text, that is very informative.\\
\begin{forest}
[S, phantom
  [S, no edge, baseline
        [NP,name=np11
                [he]]
        [VP, name=vp1
          [V,name=v1    [knows]]]]
  [S, no edge, name=s2
        [V, name=vcoord, no edge [and, name=and, no edge]]
        [VP
           [V,name=v2 [loves]]
           [NP, name=np22 [this record, roof]]]]]
\draw (s2.south)--(np11.north)
      (vp1.south)--(np22.north);
\draw[thick] (vcoord.south)--(v1.north)
             (vcoord.south)--(v2.north)
             (vcoord.south)--(and.north);
\end{forest}



\end{document}

코드 출력

관련 정보