새 페이지를 삽입하고 싶습니다.티컬러박스환경이지만 다음 예에서는 \newpage
명령을 무시함을 보여줍니다.
\documentclass[11pt]{book}
\usepackage{lipsum}
\usepackage[breakable,skins]{tcolorbox}
\newtcolorbox{activitybox}{%
breakable,
enhanced,
colback=white,
colframe=black,
coltitle=white,
title={\bfseries Title}
}
\begin{document}
\begin{activitybox}
\lipsum[1]
\newpage
\lipsum[1]
\end{activitybox}
\end{document}
문서에서는 이를 수행하는 유일한 방법은페이크 브레이크(373페이지)여기서 스킨 매개 변수가 각각 및 로 설정된 명령 tcolorbox
사이에 두 개의 별도 환경을 만듭니다 .\newpage
skin=enhancedfirst
skin=enhancedlast
\documentclass[11pt]{book}
\usepackage{lipsum}
\usepackage[breakable,skins]{tcolorbox}
\newtcolorbox{activitybox}[1][]{%
breakable,
enhanced,
colback=white,
colframe=black,
coltitle=white,
#1
}
\begin{document}
\begin{activitybox}[title=Title,skin=enhancedfirst]
\lipsum[1]
\end{activitybox}
\newpage
\begin{activitybox}[skin=enhancedlast]
\lipsum[1]
\end{activitybox}
\end{document}
이 아이디어의 문제점은 새 페이지를 환경 내에 배치해야 할 수도 있다는 것입니다. 그러면 환경 상태가 이전부터 계속 유지되는지 확인하면서 조기에 닫았다가 다시 열어야 합니다. 또한 환경이 실제로 종료되지 않았고 여전히 페이지에서 계속되고 있으므로 호출해서는 안 되는 환경 내에서 추가 시작 및 종료 정의가 있을 수도 있습니다.
대안적인 해결책은 다음을 활용하는 것입니다.break at
(355쪽)tcolorbox
주어진 길이에서 를 끊는 매개변수입니다 . 문서를 편집할 때마다 각 매개변수를 다시 계산해야 하는 환경 수가 tcolorbox
수백 개가 되기 때문에 내 상황에서는 사용할 수 없습니다 break at
. 이는 문서를 완전히 렌더링한 후에만 새 길이를 직접 측정할 수 있기 때문입니다. .
낮은 수준에서는 다음과 같은 경우 페이지 나누기가 가능합니다.breakable
(351페이지)활성화되어 있고 tcolourbox
환경이 두 페이지 이상에 걸쳐 있어야 합니다. 해당 페이지 나누기를 더 높은 수준에서 실행하거나 적어도 페이지의 나머지 부분을 빈 수직 공간으로 채울 수 있습니까?
답변1
당신은 사용할 수 있습니다
\documentclass[11pt]{book}
\usepackage{lipsum}
\usepackage[breakable,skins]{tcolorbox}
\newtcolorbox{activitybox}[1][]{%
breakable,
enhanced,
colback=white,
colframe=black,
coltitle=white,
#1
}
\newcommand*{\fakebreak}{\par\vspace{\textheight minus \textheight}\pagebreak}
\begin{document}
\begin{activitybox}[title=Title]
\lipsum[1]
\fakebreak
\lipsum[1]
\end{activitybox}
\end{document}
하지만 상자가 페이지 끝까지 채워지기 때문에 결과가 다르다는 점에 유의하세요!
자동 중단에 대해 유사한 동작을 원하면 다음 옵션을 사용하십시오 height fixed for=first and middle
.
\documentclass[11pt]{book}
\usepackage{lipsum}
\usepackage[breakable,skins]{tcolorbox}
\newtcolorbox{activitybox}[1][]{%
breakable,
enhanced,
colback=white,
colframe=black,
coltitle=white,
#1
}
\newcommand*{\fakebreak}{\par\vspace{\textheight minus \textheight}\pagebreak}
\begin{document}
\begin{activitybox}[title=Title,height fixed for=first and middle]
\lipsum[1]
\fakebreak
\lipsum[1-2]
\parbox{\linewidth}{\lipsum[3-4]}% \parbox used to force an early page break
\lipsum[5-7]
\end{activitybox}
\end{document}