패키지 에서 제공하는 긴 ToC가 있습니다 tocloft
. 두 번째 페이지로 넘어갈 만큼 길어요. 그러면 내가 아는 것은 (예를 들어) 섹션 2가 첫 번째 페이지 끝에 있고 섹션 2.1이 두 번째 페이지 시작 부분에 있다는 것입니다.
이상적으로는 ToC의 섹션과 하위 섹션을 그룹화하여 페이지별로 분할되면 새 페이지로 푸시되도록 하고 싶습니다. 최종 결과는 첫 번째 페이지가 섹션 1.X로 끝나고 두 번째 페이지가 섹션 2로 시작하는 것입니다(…).
이것을 구성하는 방법이 있나요?
문제를 보여주는 MWE입니다.
\documentclass{article}
\usepackage{tocloft}
\begin{document}
\tableofcontents
\clearpage
\section{Section 1}
\subsection{A subsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsection{A subsection}
\subsection{A subsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsection{A subsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\section{A Second Section}
\subsection{A subsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\subsubsection{A subsubsection}
\section{A Third Section}
\subsection{A subsection}
\subsubsection{A subsubsection}
\end{document}
답변1
다음은 패키지 사용자 가이드 6페이지에서 발췌한 내용입니다 tocloft
.
ToC에서 원하지 않는 페이지 나누기가 발생할 수 있습니다. 예를 들어 긴 여러 줄 섹션 제목이 있고 ToC에서 줄 사이에 페이지 나누기가 있을 수 있습니다. 문서가 안정되면
\addtocontents
문서 본문의 적절한 위치에서 ToC의 페이지 나누기를 조정할 수 있습니다. 예를 들면:
\addtocontents{toc}{\protect\newpage}
페이지 나누기를 강제로 수행합니다.
\addtocontents{toc}{\protect\enlargethispage{2\baselineskip}}
페이지를 더 길게 만들려면
\addtocontents{toc}{\protect\needspace{2\baselineskip}}
페이지에 두 기준선의 수직 공간이 남아 있지 않은 경우 새 페이지를 시작하도록 지정합니다. (\needspace
매크로는 패키지에 정의되어 있습니다needspace
.)
참고로 이러한 조언은 특정 항목에 의존하지 않습니다.tocloft
로드되는 패키지에 따라 달라지지 않습니다.
문서의 경우 최적의 작업은 지침을 삽입하는 것입니다.
\addtocontents{toc}{\protect\newpage}
직전
\section{A Second Section}
문서 본문에.
마지막으로 "문서가 안정된 후"라는 한정자를 기록해 두십시오. 확실히, 문서가 거의 완성되지 않는 한 이러한 미세 조정 작업에 참여하지 마십시오.
답변2
답변3
의 도움으로마모트, 간단한 명령으로 제목을 다음 페이지로 밀어 넣을 수 있었습니다 \enlargethispage{-0.5cm}
. 매우 수동적이고 문제에 구체적이기 때문에 가장 이상적인 솔루션은 아니지만 적어도 작동합니다.
위의 MWE에서 교환했습니다.
\tableofcontents
~와 함께
{%
\enlargethispage{-0.5cm}
\tableofcontents
}
아래 출력이 생성되었습니다.