longtable 내부의 tcolorbox 환경 — 가능합니까?

longtable 내부의 tcolorbox 환경 — 가능합니까?

tcolorbox나는 환경 내부의 환경을 사용하려고 노력합니다 longtable. 최소 샘플:

\documentclass{article}
\usepackage{tcolorbox}
\usepackage{longtable}
\usepackage{lipsum}

\begin{document}
\begin{longtable}{|p{\linewidth}|}
\hline
\begin{tcolorbox}
\lipsum[3]
\end{tcolorbox}
\\
\hline
\end{longtable}
\end{document}

불행하게도 코드는 컴파일되지 않습니다.

! Misplaced \noalign.                                                                                                            
\pagebreak ->\noalign                                                                                                            
                      {\ifnum `}=0\fi \@testopt {\LT@no@pgbk -}4                                                                 
l.11 \end{tcolorbox}                                                                                                             

이를 수행하는 마법 옵션/해킹/해결 방법이 있습니까?

답변1

키 를 재설정해야 합니다 before. 기본값에는 \pagebreak가 포함되어 있으며 longtable이 \pagebreak를 재정의하므로 오류가 발생합니다. 여기서는 다음을 컴파일합니다.

\documentclass{article}
\usepackage{tcolorbox}
\usepackage{longtable}
\usepackage{lipsum}

\begin{document}

\begin{longtable}{|p{\linewidth}|}
\hline
\begin{tcolorbox}[before={}]
\lipsum[3]
\end{tcolorbox}
\\
\hline
\end{longtable}
\end{document}

답변2

환경 의 일부 비기본 옵션 tcolorbox도 이 문제를 일으키는 것으로 보입니다. 특히 다음 옵션 중 하나를 사용하는 경우 tcolorbox환경을 배치하려고 할 때 비슷한 오류 메시지가 나타나는 것을 경험했습니다 .longtable

  • breakable
  • lines before break=X
  • 그리고 아마도 다른 페이지 나누기 관련 설정

이러한 설정은 OP에서 제공하는 최소 예제에는 나타나지 않지만 다른 사용자는 그러한 설정을 사용하는 환경을 다루다가 여기에서 끝날 수 있습니다(정확히 제가 여기에서 끝난 방식입니다).

울리케의 답변도 적용해야 합니다!

관련 정보