阅读完以下答案后这个问题,我决定尝试ltxgrid
一下。一个简单的实验表明,使用\twocolumngrid
和\onecolumngrid
可以完成它们的工作;但是,一列和两列片段之间的垂直空间太小了(请参阅下面的 MWE)。通过浏览手册,ltxgrid
我推断出我以错误的方式使用它。现在恰当的方式?(为简单起见,可以假设不会有任何页面同时具有一列和两列,但这个假设可能需要在某些时候被放弃,因此欢迎更一般的答案。)
\documentclass{article}
\usepackage{ltxgrid}
\usepackage{lipsum}
\begin{document}
\lipsum[1-2]
\twocolumngrid
\lipsum[3-4]
\onecolumngrid
\lipsum[5]
\end{document}
答案1
我只需添加一些空格即可\addvspace{2\baselineskip}
。您认为使用错误的原因在于作者建议您将这些决定作为选项或语义命名的宏留给类。
例如这里是的定义titlepage
。
\renewenvironment{titlepage}{%
\let\wastwocol@sw\twocolumn@sw
\onecolumngrid
\newpage
\thispagestyle{titlepage}%
\c@page\z@% article sets this to one not zero???
}{%
\wastwocol@sw{\twocolumngrid}{\newpage}%
}%
这是一个 MWE。
\documentclass{article}
\usepackage[latin]{babel}
\usepackage{ltxgrid}
%\usepackage{ltxutil}
\usepackage{lipsum}
\columnsep1.5em
\begin{document}
\lipsum[1-2]
\addvspace{2\baselineskip}
\twocolumngrid
\lipsum[3-4]
\begin{figure}[h]\centering\rule{3cm}{3cm}\end{figure}
\lipsum*[1-2]
\begin{figure}[t]\centering\rule{3cm}{3cm}\end{figure}
\lipsum*[3]
\end{document}
注意浮标。