I am sure there is no single package dedicated to the items you list, including "etc.", except perhaps savetrees
:
The goal of the savetrees
package is to pack as much text as
possible onto each page of a LaTeX document. Admittedly, this makes
the document far less attractive. Nevertheless, savetrees
is a
simple way to save paper when printing draft copies of a document. It
can also be useful when trying to meet a tight page-length requirement
for a conference or journal submission.
On a case-by-case basis, the following might be of use:
Consider using the setspace
package. Read more about adjusting the line spacing from the UK TeX FAQ entry: Why doesn't \linespread
work?
Standard document class (like article
, book
and report
) allow for passing optional arguments regarding the default font size. For example,
\documentclass[10pt]{article}
will produce a document with default 10pt
font size. Other options include
\usepackage{fix-cm}% http://ctan.org/pkg/fix-cm
or
\usepackage{anyfontsize}% http://ctan.org/pkg/anyfontsize
or using the memoir
document class which allows font size selections from 9pt
to 60pt
by default.
geometry
is king when it comes to layout specification. For example,
\usepackage[margin=1cm]{geometry}% http://ctan.org/pkg/geometry
will leave a 1cm
margin (on all sides), without having to fiddle with other lengths.
- Space between bullet points:
In general, list management is easily made possible via enumitem
. For example, inter-item separation is set using
\begin{itemize}[noitemsep]
\item ...
...
\end{itemize}
would leave no separation between items. The option nosep
will kill all vertical spacing.
- Spacing between equations:
If you're referring to the spacing above/below equations in surrounding text, then you need to modify the lengths \abovedisplayskip
, \abovedisplayshortskip
, \belowdisplayskip
and \belowdisplayshortskip
. These lengths define the skip (and stretch/shrink) above and below an equation if the preceding/following paragraph has a short line or not.
If you're using amsmath
's align
(and friends) environment, then the spacing between equations are usually set via the length \jot
. Therefore, modifying this length would provide a tighter spacing between elements within that environment.
The above concepts both deal with vertical spacing. There's more options (like vertical spacing in array
or tabular
) contained within Herbert Voß' mathmode
document (details will follow). Horizontal spacing is also something you can tighten within mathmode. For more on this, see the mathmode
document (section 11 Space, p 28).
Finally, you could also follow the approach in How to scale entire document including Maths symbols? to compress a number of pages onto one using pdfpages
's nup
option. This would require a two-stage process of creating the regular information (phase 1), and then a compressed version via pdfpages
(phase 2).
You can adjust the values of \abovedisplayskip
, \belowdisplayskip
, \abovedisplayshortskip
, \belowdisplayshortskip
. The shortskip
versions are used in the situation where a short text line comes before the displayed equation: if the text ends before the displayed equation starts, it's good to add less vertical space.
Since document classes often define those skips in \normalsize
you could redefine this macro, patch it, or simply add to it, because just setting the values in the preamble would not work then.
\documentclass{article}
\usepackage{amsmath}
\makeatletter
\g@addto@macro\normalsize{%
\setlength\abovedisplayskip{40pt}
\setlength\belowdisplayskip{40pt}
\setlength\abovedisplayshortskip{40pt}
\setlength\belowdisplayshortskip{40pt}
}
\makeatother
\begin{document}
text
\begin{gather}
1 + 1 = 2
\end{gather}
text
\begin{equation}
1 + 1 = 2
\end{equation}
\end{document}
The same can be done without \g@addto@macro
, so without any @
and not requiring \makeatletter
and \makeatother
, by using \expandafter
:
\expandafter\def\expandafter\normalsize\expandafter{%
\normalsize
\setlength\abovedisplayskip{40pt}
\setlength\belowdisplayskip{40pt}
\setlength\abovedisplayshortskip{40pt}
\setlength\belowdisplayshortskip{40pt}
}
I prefer the way of adding to \normalsize
, because both redefining and patching require knowing the exact definition of \normalsize
used by the document class. Bot ways I described earlier in the LaTeX Community forum, in an answer to Can't set vertical whitespace in the preamble.
More information is available in the excellent mathmode documentation.
Best Answer
The vertical space between the lines for all math expressions are controlled by the dimension
\jot
. (I know the name isn't very intuitiv).Here an example.