# Why do we have something like "-3.5ex \@plus‎ -‎1ex \@minus‎ -‎.2ex" instead of a fixed value? [duplicate]

Possible Duplicate:
What is glue stretching?

In the book class, we have the following.

``````‎\newcommand\section{\@startsection {section}{1}{\z@}%‎
‎{-3.5ex \@plus‎ -‎1ex \@minus‎ -‎.2ex}%‎
‎{2.3ex \@plus.2ex}%‎
‎{\normalfont\Large\bfseries}}‎
``````

I want to know why we have something like `-3.5ex \@plus‎ -‎1ex \@minus‎ -‎.2ex` instead of a fixed value like `-3.5ex`? What are the `\@plus` and the `\@minus` for?

• Related: What is glue stretching? Jan 9, 2013 at 11:50
• By the way, `\@plus` and `\@minus` are macros which expand respectively to `plus` and `minus`. LaTeX defines those TeX keywords as macros for memory efficiency reasons (they are a single token, instead 4 and 5 respectively, i.e. one per char). Jan 9, 2013 at 12:06

by default, the first line and the last line of every page should be on the same height. This is easy if you have only normal text lines with the same font size and without math, images, section headings and so on. But it is not easy if you have such of these objects. Then you need some parts which you can vertically stretch (plus) or shrink (minus). Those length is called a skip. Over (`\@plus‎ -‎1ex \@minus‎ -‎.2ex`) and under (`\@plus.2ex`) a section title is a good place to stretch/shrink. Also between paragraphs and so on.
All that is not needed if you use the commands `\raggedbottom` and/or `\raggedright`. But that always gives a lousy typesetting ...