在多列环境中跨越列

在多列环境中跨越列

我正在使用该multicol包制作一个基于 2 列的文档,但我希望在一个地方融合这两列,然后再返回到这两列,但我不知道如何实现这一点。

答案1

这是 Tom Bombadil 宏的通用版本:在结束环境之前保存的\multicolinterrupt当前值,并在排版“中断”文本后启动一个与上一个环境具有相同列数的新环境。\col@numbermulticolsmulticols

\documentclass[parskip]{scrartcl}
\usepackage[margin=15mm]{geometry}
\usepackage{lipsum}
\usepackage{multicol}
\usepackage{xcolor}

\newcounter{tempcolnum}

\makeatletter
\newcommand{\multicolinterrupt}[1]{% Stuff to span both rows
\setcounter{tempcolnum}{\col@number}
\end{multicols}
#1%
\begin{multicols}{\value{tempcolnum}}
}
\makeatother

\begin{document}

\begin{multicols}{3}
\lipsum[1-2]
\multicolinterrupt{\textcolor{blue}{\lipsum[3-4]}}
\lipsum[5-6]
\end{multicols}

\end{document}

答案2

大概是这样吧?

\documentclass[parskip]{scrartcl}
\usepackage[margin=15mm]{geometry}
\usepackage{lipsum}
\usepackage{multicol}
\usepackage{xcolor}

\newcommand{\multicolinterrupt}[1]{% Stuff to span both rows
\end{multicols}
#1
\begin{multicols}{2}
}

\begin{document}

\begin{multicols}{2}
\lipsum[1-2]
\multicolinterrupt{\textcolor{blue}{\lipsum[3-4]}}
\lipsum[5-6]
\end{multicols}

\end{document}

在此处输入图片描述

相关内容