Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I'm using \vfill* to unbalance columns in a twocolumn environment. The columns are filled with a series of figure environments that I'm using to keep blocks of text together. I would like the figures to be at the top of the page, with the whitespace at the bottom, rather than spaced out, which seems to be the default when using twocolumn. \vfill* works great, except that it prints the asterisk at the bottom of the page. I found examples of people using \vspace*{\fill}, but this doesn't work for the document I'm working with. Using \vfill \break was also suggested, but it only works for the right column. Using \vfill \columnbreak shifts my content off the page. I'm using xelatex to compile, since I'm using mathspec. Does anyone know why the asterisk is printing, and how to prevent this? Or, does anyone know a better way to unbalance the columns?

\documentclass[twocolumn]{article}
\begin{document}
\begin{figure}[H]
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer consectetur tincidunt vestibulum. Sed sed enim id ante posuere sodales. Mauris porttitor sollicitudin neque et sollicitudin. 
\end{figure}
\begin{figure}[H]
Mauris lacinia suscipit odio eget bibendum. Curabitur facilisis, felis sit amet venenatis tempus, massa lectus dignissim dui, ut vehicula nibh sem ac massa. 
\end{figure}
\begin{figure}[H]
Morbi et tortor id leo rhoncus facilisis nec id quam. Phasellus porttitor, augue et viverra tempor, nisi leo fringilla erat, a iaculis eros felis id magna.
\end{figure} 
\vfill*
\begin{figure}[H]
Nam vitae lorem nunc. Sed viverra, dui nec egestas auctor, ligula arcu fringilla velit, at volutpat justo odio vitae turpis. Curabitur eget nibh justo.
\end{figure}
\begin{figure}[H]
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer consectetur tincidunt vestibulum. Sed sed enim id ante posuere sodales. Mauris porttitor sollicitudin neque et sollicitudin. 
\end{figure}
\end{document}
share|improve this question
    
What about \mbox{}\vfill? –  Werner Apr 8 '13 at 20:04
2  
\vfill is a TeX primitive and has no starred version or other arguments –  cgnieder Apr 8 '13 at 20:07
    
Using mbox didn't give me exactly the spacing I was looking for. It got rid of some of the whitespace, but not all of it, as vfill was doing. –  user27446 Apr 8 '13 at 20:09
    
@cgnieder I didn't realize that, I guess I assumed since hspace had a starred version, vspace did as well. Simply using \vfill doesn't produce the same result, however. Why would that be? –  user27446 Apr 8 '13 at 20:12
1  
\vspace has indeed a *-version; but \vfill isn't \vspace, is it? Neither \hfill has a *-variant. –  egreg Apr 8 '13 at 20:21
show 3 more comments

1 Answer

do not use float environments, use minipages instead and if you need captions then use package caption and \captionof{figure}{...}. This allows to use \newpage. \vfill is then not needed:

\documentclass[twocolumn]{article}

\begin{document}
\begin{minipage}{\linewidth}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer consectetur tincidunt vestibulum. Sed sed enim id ante posuere sodales. Mauris porttitor sollicitudin neque et sollicitudin. 
\end{minipage}

\begin{minipage}{\linewidth}
Mauris lacinia suscipit odio eget bibendum. Curabitur facilisis, felis sit amet venenatis tempus, massa lectus dignissim dui, ut vehicula nibh sem ac massa. 
\end{minipage}

\begin{minipage}{\linewidth}
Morbi et tortor id leo rhoncus facilisis nec id quam. Phasellus porttitor, augue et viverra tempor, nisi leo fringilla erat, a iaculis eros felis id magna.
\end{minipage} 

%\vfill
\newpage
\begin{minipage}{\linewidth}
Nam vitae lorem nunc. Sed viverra, dui nec egestas auctor, ligula arcu fringilla velit, at volutpat justo odio vitae turpis. Curabitur eget nibh justo.
\end{minipage}

\begin{minipage}{\linewidth}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer consectetur tincidunt vestibulum. Sed sed enim id ante posuere sodales. Mauris porttitor sollicitudin neque et sollicitudin. 
\end{minipage}
\end{document}
share|improve this answer
add comment

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.