비머와 숲의 갈등

비머와 숲의 갈등

forest프레젠테이션 에서 트리를 작성하기 위해 패키지를 사용할 때 충돌이 발생하는 것 같습니다 beamer. 옵션 을 사용할 때마다 delay(아마도 와 함께만 사용하고 content다른 방법으로는 사용하지 않은 경우) 다음 오류가 나타납니다.

! \beamer@doifinframe 정의에 잘못된 매개변수 번호가 있습니다.

오류에도 불구하고 Overleaf에서 PDF가 생성되어 내가 원하는 트리를 제공하지만 TeXworks는 나에게 그다지 친절하지 않습니다.

오류의 원인과 해결 방법은 무엇입니까?

MWE(로부터forest선적 서류 비치)

\documentclass{beamer}

\usepackage{forest}

\begin{document}

\begin{frame}

        \begin{forest}  
            [roman, delay={for children={content=\romannumeral##1}}    
            [1][2][3][4]  
        ]\end{forest}

\end{frame}

\end{document}

어떤 렌더링:

결과

답변1

어떤 의미에서 이것은 다음과 중복됩니다.이 질문그리고 많은 다른 사람들. 마틴 샤러(Martin Scharrer)는 다음과 같이 설명합니다.

프레임 환경은 의사 환경, 즉 실제로 \frame{ .. }위장된 환경입니다.

즉, 을 조심해야 한다는 것입니다 #. forest이에 대한 예외는 아니므로 옵션은 다음과 같습니다.

  • 옵션 을 사용 fragile하거나
  • 두 배로 #두 배, 즉 네 배로 늘리세요.

이로 인해

\documentclass{beamer}

\usepackage{forest}

\begin{document}

\begin{frame}[fragile]

        \begin{forest}  
            [roman, delay={for children={content=\romannumeral#1}}    
            [1][2][3][4]  
        ]\end{forest}

\end{frame}


\begin{frame}

        \begin{forest}  
            [roman, delay={for children={content=\romannumeral####1}}    
            [1][2][3][4]  
        ]\end{forest}

\end{frame}
\end{document}

그러면 두 개의 동일한 프레임이 생성됩니다.

여기에 이미지 설명을 입력하세요

forest특히, 와 사이에는 진정한 충돌이 없으며 beamer, 단지 프레임에서 인수가 있는 매크로를 정의하고 사용하는 일반적인 미묘함뿐입니다.

관련 정보