使用 multicol 实现不同的列宽

使用 multicol 实现不同的列宽

是否可以在一个multicol环境中指定不同的列宽?例如,在两列布局中,是否可以将左列设置为右列宽度的两倍?

答案1

为一个单页 该包vwcol(可变宽度的多文本列)就是您正在寻找的。

 \documentclass{article} 
 \usepackage[margin=2cm]{geometry}
 \usepackage{lipsum}
 \usepackage{microtype}
 \usepackage{vwcol}  
 \begin{document} 
 \begin{vwcol}[widths={0.6,0.4},
 sep=.8cm, justify=flush,rule=0pt,indent=1em] 
 \lipsum[1-8] 
 \end{vwcol} 
 \end{document} 

1型

为了多页建议的flowfram软件包可以提供帮助,但主要是针对不同高度和位置但宽度相同的列(框架)。不幸的是,当跳转到不同宽度的列时,段落的宽度无法更改(更改直到段落结束时才会生效),因此必须使用或指定文本段落跳转到下一列的确切位置(使用或或在最后一列)来\hsize模拟段落中断。\framebreak\newpagepagebrak[4]\finishthispage

在下一个示例中,当第一个示例被注释以解释问题时,捕获显示\newpage(否则输出大致类似于第一个例子,但在这种情况下列不平衡)。

\documentclass{article}
\usepackage[margin=2cm]{geometry}
\usepackage{flowfram}
\usepackage{lipsum}
\usepackage{microtype}

\newflowframe[1-5]
{0.60\textwidth}{\textheight}
{0pt}{0pt}[leftcolumn]

\newflowframe[1-5]{0.30\textwidth}{\textheight}
{0.65\textwidth}{0pt}[rightcolumn]

\begin{document}
\lipsum[1-5]
\newpage 
\lipsum[6-8]
\newpage
\lipsum[9-12]
\end{document}

微波辐射计

编辑

另一个选项是paracol。它可以\columnratio在多个页面中使用不同宽度的列,但列的切换始终是您的工作。这意味着如果文本到达某列的末尾,则在下一页的同一列中继续,而不是在下一个右列中继续:

\documentclass{article}
\usepackage[latin]{babel}
\usepackage{geometry,parskip,color}
\usepackage{lipsum}
\usepackage{paracol}
\begin{document}
\columnratio{0.6}
\begin{paracol}{2}
\lipsum[1] \switchcolumn \color{red} 
\lipsum[3] \switchcolumn \color{blue}
\lipsum[4] \switchcolumn \color{green}
\lipsum[5] \switchcolumn \color{green}
\lipsum[6] \switchcolumn \color{magenta} % flow to the next page
\lipsum[7] \switchcolumn \color{black} % flow to the next page
\lipsum[8] 
\end{paracol}
\end{document}

相关内容