I am trying to create a two page (legal) cheat-sheet containing all relevant mathematical formulas for an upcoming exam. My document consists of formula after formula, split under sections (e.g. Indicies, Logarithms, Matrices, etc).

I don't care how many columns Latex creates, how small the font is (as long as my printer can prints it it's fine) or what font I use.

How can I make latex put all my formulas in 2 pages?


LaTeX may not be the easiest tool for this, as in my experience notesheets cram the most info when fitting sections together like a puzzle. Using columns and arranging simply from top to bottom creates extraneous whitepsace to the right of short lines of text. LaTeX is made to use lots of whitespace for good typesetting, whereas you're in a custom layout that minimizes spacing. Though the savetrees package mentioned by Sean Allred will minimize some whitespace, you'll notice on the last page of their example document that to the right of the short lines of poetry near the bottom, there is a lot of space where more information could be easily added in a layout program like Scribus, but not so easily with LaTeX.

Using the free software Scribus, I would use its LaTeX Render frames to typeset each section of mathematics, and use Scribus drag-and-drop interface to arrange the text across the page to squeeze it all in. As a plus, this makes it really easy to draw lines between sections to help with visual grouping.

Add a LaTeX Frame to Scribus

If you decide to use this method, when exporting as a PDF you can safely ignore the errors, and make sure to select "Embed PDF & EPS files (EXPERIMENTAL)" so the LaTeX is exported as text, and not a rasterized image. Using this method, I quickly created the example layout below. Note that the LaTeX text boxes are actually overlapping in some places, but it is still fully readable.

Example Notesheet

  • 2
    This isn't true. Certain document classes are designed to make use of whitespace; this isn't true of all classes. – Sean Allred Jan 13 '17 at 17:32
  • @Sean Thanks for your answer. I didn't know about savetrees, that looks well-suited to the OP. However, it does seem that your method will still result in sections of whitespace around the page that cannot be easily filled with LaTeX, but could be filled manually with software like Scribus. – Micah Lindström Jan 13 '17 at 17:58
  • IIRC you'd just need to change the margins of the page. That will grow \linelength and (clearly) reduce the margin. – Sean Allred Jan 13 '17 at 18:04
  • @Sean I don't mean space in the margins, I mean space next to short lines of text. O a notesheet, very few lines use the whole \linelength. While some may need the full page width, most lines may use a quarter to a half of the page width. Without lots of manual tweaking with multicol, I think it is difficult to arbitrarily move sections of text around (even rotating it may help fit stuff in) with plain LaTeX. At the end of the day, this may be a philosophy difference. – Micah Lindström Jan 13 '17 at 18:13
  • Are you referring to single-line paragraphs? If so, why wouldn't you just combine the lines? For list environments, you can use something like enumitem to create in-par lists. – Sean Allred Jan 13 '17 at 18:15

You could throw all of your content into a minipage and adjust its width appropriately. This will, however, require manual tweaking of the minipage contents to split between pages since minipage puts everything in one 'box' which gets put on one page.

  \begin{multicols}{4} % (say)
     content content

Helpful packages would include

  • 'inline' lists from enumitem: don't use a whole line for each item
  • \usepackage[extreme]{savetrees}: reduce whitespace usage drastically across the board

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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