reprogrammer
reprogrammer

Reputation: 14728

Printing out LaTeX Variables

I am using a LaTeX class file which sets various parameters such as margins, line spacing, ... according to the parameters passed to it. For some reason, the end result does not look right. Some margins are not properly set. I'd like to print out the values of various variables that LaTeX have computed along the way to see where the problem is. For instance, I'd like to know what the value of \oddsidemargin is in a certain line of code. Is there a way to ask LaTeX to print out such information?

Upvotes: 20

Views: 13246

Answers (4)

Will Robertson
Will Robertson

Reputation: 64640

For debugging page layout, Peter Wilson's layouts package is the way to go. Here's an example for visualising the page design and seeing the dimensions used for it:

\documentclass{article}
\usepackage{layouts}
\begin{document}
\drawmarginparstrue
\currentpage
\pagedesign
\end{document} 

There are many features to fine-tune the information returned by the package. It also provides the \prntlen command to print the size of a length in case you don't need so much information.

Upvotes: 13

CTAN says: printlen which allows you to specify the output units.

Upvotes: 5

lhf
lhf

Reputation: 72402

Try also this:

\usepackage[verbose]{geometry}

Upvotes: 4

Svante
Svante

Reputation: 51531

You can insert the value of a variable with \the:

\the\oddsidemargin

Upvotes: 33

Related Questions