TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Is it possible to specify different column widths in a multicol environment? For example, in a two column layout, can the left column be set to twice the width of the right column?

share|improve this question
4  
No, as in most TeX column/page breaking the text is first set into an (essentially) infinite scroll and only later that scroll is chopped in to columns of the right length, there is no feedback from the column/page splitting to the line breaking. – David Carlisle Jan 7 '13 at 13:03
1  
if you do not need a pagebreak than you can use a tabularx. – Herbert Jan 7 '13 at 13:18
1  
Possibly the flowfram package is what you're looking for. – egreg Jan 7 '13 at 13:33
1  
If all else fails, I can add this as an option to the pullquote package ;-) – Stephan Lehmke Jan 7 '13 at 13:42
up vote 25 down vote accepted

For a single page the package vwcol (vari­able-width mul­ti­ple text columns) make is what you're looking for.

 \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} 

MWE1

For multiple pages the suggested flowfram package can help, but mostly with columns (frames) of different heights and places but the same width. Unfortunately the width of a paragraph cannot be changed when jump to a column of different width (the change in \hsize will not come into effect until the end of the paragraph), so it must be simulate a paragraph break with \framebreak or specified the exact point where the text paragraphs jump to the next column (with \newpage or pagebrak[4] or \finishthispage in the last column).

In the next example, the capture show when the first \newpage is commented to explain the problem (otherwise the ouput is roughly similar to the first example, but the columns are not balanced in this case).

\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}

MWE2

share|improve this answer
    
Is there a way to get the vwcol environment working with Beamer documents? – Luís de Sousa Apr 17 at 16:00
2  
@LuísdeSousa It work, but the beamer class provide the columns environment, so I do not see the benefit of use wvcol in presentations. – Fran Apr 18 at 3:11
    
I tried again wvcol and it is ignored by the compiler. But the columns environment works perfectly, thanks. – Luís de Sousa Apr 18 at 9:25

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.