我曾见过其他关闭多列以使章节标题跨列的解决方案,但它们似乎都需要自定义黑客而不是简单的包选项解决方案。
我在研究中看到过关于 memoir 的“\AtBeginClass”和“\AtEndClass”的提及,于是我想到用它们来完成这项工作。不过我想我误解了一些东西,因为我完全无法让它工作。
\documentclass{memoir}
\usepackage{lipsum,multicol}
% these work as expected
\AtBeginDocument{\begin{multicols}{2}}
\AtEndDocument{\end{multicols}}
% these don't seem to be working
\AtBeginClass{chapter}{\end{multicols}}
\AtEndClass{chapter}{\begin{multicols}{2}}
\AtBeginClass{section}{\end{multicols}}
\AtEndClass{section}{\begin{multicols}{2}}
\begin{document}
\chapter{My Chapter}
\lipsum
\section{My Section}
\lipsum
\end{document}