# How to calculate a new length?

What I want to do is calculate the actual size between the edge of the paper, and my header. \evenmarginsize and \oddmarginsize do not do this.

\settowidth{\msize}{((\paperwidth - \textwidth)/2)}

Doesn't seem to work, how can this be done?

-
1. You don't say which edge of the paper. On first reading, because you are talking about the header, I thought the top edge. 2. The commands \evenmarginsize and \oddmarginsize don't exist. Perhaps you meant \oddsidemargin and \evensidemargin. 3. \settowidth takes a piece of text and calculates its width. For what you want, use \setlength and you need the calc package to use algebraic notation. 4. One more thing: supply a compilable file that shows what you tried. –  Dan Dec 9 '13 at 3:13
1) The left hand side, when I first tried this I didn't think it mattered. 2) Yes, those are the correct commands. My memory mixed them up. 3) Below is a solution without calc. 4) Didn't need to. Oh, and one more thing, calm the attitude Mr. Keyboard Warrior. –  NictraSavios Dec 9 '13 at 8:41

Use the e-TeX structure:

\newlength{\msize}
\setlength{\msize}{\dimexpr(\paperwidth-\textwidth)/2\relax}

The macro \settowidth is used with finding the width of a portion of text such as in:

\newlength{\mytextwidth}
\settowidth{\mytextwidth}{This is some text whose width I'm measuring}

The documentation can be found by running texdoc etex from the command line. Amoung other things, e-TeX provides several nice commands to facilitate calculations using \dimexpr, \numexpr, and several other flavors. Since I've discovered these, I find I don't use the calc package that much anymore.

-
Documentation Please :)! –  NictraSavios Dec 8 '13 at 19:54