
Preciso de quebras de página antes \section{...}
de cada documento. De acordo com este tópico:Comece uma nova página com cada seçãoDevo adicionar o seguinte comando:
\newcommand{\sectionbreak}{\clearpage} % page break before section
Há um problema ao usar toc
with hyperref
embora. Os hiperlinks toc
para cada seção são definidos uma página antes de sua posição real na página. No exemplo a seguir:
- Se
toc
eu clicar no hiperlink deSeção 1(que está empágina 2), vou continuarPágina 1. - Se
toc
eu clicar no hiperlink deSeção 2(que está empágina 3), serei levado parapágina 2.
Aqui está um código pronto para testar:
\documentclass[12pt,a4paper]{scrartcl} % A4 paper and 12pt font size
\usepackage{hyperref} % Hyperlinks
\usepackage{titlesec} % customizing sections
\newcommand{\sectionbreak}{\clearpage} % page break before section
\begin{document}
\tableofcontents
\section{Section 1}
Text
\subsection{Subsection 1.1}
Text
\subsection{Subsection 1.2}
Text
\section{Section 2}
Text
\subsection{Subsection 2.1}
Text
\subsection{Subsection 2.2}
Text
Text
\end{document}
Preciso de uma correção para a ligação errada toc
ou de algum outro método de inserção de quebras de página antes das seções, que seja compatível com toc
hiperlinks.
Responder1
Amboshyperref
etitlesec
manipular importante,relacionadoelementos de um documento. Como tal, a ordem de carregamento deve sempre ser considerada. Neste caso, a ordem de carregamento deve ser semelhante
\usepackage{titlesec}
...
\usepackage{hyperref}
como implicitamente sugerido porQuais pacotes devem ser carregados depois hyperref
em vez de antes?. No entanto, você também encontrarámemoir
mencione o seguinte em .log
sobre o carregamento titlesec
:
Class scrartcl Warning: Usage of package `titlesec' together
(scrartcl) with a KOMA-Script class is not recommended.
(scrartcl) I'd suggest to use the package only
(scrartcl) if you really need it, because it breaks several
(scrartcl) KOMA-Script features, i.e., option `headings' and
(scrartcl) the extended optional argument of the section
(scrartcl) commands .
(scrartcl) Nevertheless, using requested
(scrartcl) package `titlesec' on input line 4.
Embora os pacotes se destinem a estender certas "restrições" impostas por uma classe de documento, classes flexíveis (como memoir
) que fornecem sua própria funcionalidade devem ser consideradas.