Я хотел бы изменить начальную страницу главы. Создайте узкий блок текста и поместите название главы в широком внутреннем поле. Я использую класс "koma-script".
Пример страницы
+--------------+--------------+
| | title xxxxx |
| | xxxxx |
| | xxxxx |
| | xxxxx |
| | xxxxx |
| | xxxxx |
| | xxxxx |
+--------------+--------------+
\documentclass{scrbook}
\usepackage{lipsum}
\usepackage{marginnote}
\usepackage{multicol}
\RedeclareSectionCommand[beforeskip=0pt]{chapter}
\begin{document}
\begin{multicols}{2}
\chapter{Introduction}
\vfill\null
\columnbreak
\lipsum
\end{multicols}
\lipsum
\end{document}
Это простое, но удовлетворительное решение. Могу ли я автоматически изменить макет страницы 2 на одну колонку?
решение1
Автоматическое переключение в двухколоночный режим и размещение заголовка главы в левой колонке не является основной проблемой. Даже переключение обратно в одноколоночный режим после страницы главы не является настоящей проблемой:
\documentclass{scrbook}
\usepackage{lipsum}
\RedeclareSectionCommand[beforeskip=0pt,afterindent=false,style=section]{chapter}
\newif\ifafterheadingnewpage
\AddToHook{cmd/@afterheading/before}{\ifafterheadingnewpage\newpage\afterheadingnewpagefalse\fi}
\AddToHook{cmd/chapter/before}{\twocolumn\afterheadingnewpagetrue}
\AddToHook{shipout/after}{\onecolumn}
\begin{document}
\chapter{Introduction}
\lipsum
\end{document}
Но как вы видите:
настоящая проблема в том, что TeX не меняет ширину абзаца, который уже набран и частично (или даже полностью) перенесен на следующую страницу. Поэтому вам нужно самим выплевывать такие абзацы на часть, которая помещается на страницу главы, и часть, которая должна быть напечатана на странице в одну колонку, например
\documentclass{scrbook}
\usepackage{lipsum}
\RedeclareSectionCommand[beforeskip=0pt,afterindent=false,style=section]{chapter}
\newif\ifafterheadingnewpage
\AddToHook{cmd/@afterheading/before}{\ifafterheadingnewpage\newpage\afterheadingnewpagefalse\fi}
\AddToHook{cmd/chapter/before}{\twocolumn\afterheadingnewpagetrue}
\AddToHook{shipout/after}{\onecolumn}
\begin{document}
\chapter{Introduction}
\lipsum[1-2]
Nulla malesuada porttitor diam. Donec
felis erat, congue non, volutpat at, tinci-
dunt tristique, libero. Vivamus viverra fer-
mentum felis. Donec nonummy pellentes-
que ante. Phasellus adipiscing semper elit.
Proin fermentum massa ac quam. Sed diam
turpis, molestie vitae, placerat a, molestie
nec, leo. Maecenas lacinia. Nam ipsum
ligula, eleifend at, accumsan nec, suscipit
{\parfillskip0pt\newpage}%
\noindent
a, ipsum. Morbi blandit ligula feugiat ma-
gna. Nunc eleifend consequat lorem. Sed
lacinia nulla vitae enim. Pellentesque tin-
cidunt purus vel magna. Integer non enim.
Praesent euismod nunc eu purus. Donec
bibendum quam in tellus. Nullam cursus
pulvinar lectus. Donec et mi. Nam vulpu-
tate metus eu enim. Vestibulum pellentes-
que felis eu massa.
\lipsum[4-7]
\end{document}
Примечание: для использования хуков cmd/<cmdname>/before
необходим shipout/after
более или менее современный LaTeX.