36

I use this class definition in the preamble for typesetting letters:

\documentclass[12pt,ngerman,foldmarks=true,fromalign=right,fromrule=afteraddress,
  parskip=half, pagenumber=no,DIV=15]{scrlttr2}

%\usepackage[a4paper]{geometry}
%\geometry{verbose,tmargin=2cm,bmargin=0cm,lmargin=2cm,rmargin=2cm}

I have to struggle with the general problem that latex compiles into a letter with 2 pages. On the first page the last third is just empty. On the second page there is only the closing preceded by the last line of the last paragraph. It's ugly and wastes a lot of paper.

I mean, there is no point in only printing the signature on a new page.

Do you have the same problem and how do I get around that?

  • While the class option enlargefirstpage=true has a positive effect here, it’s still limited by footskip, which it respects. Then setting \setlength{\footskip}{0mm} has an additional effect, but affects every other page as well, not just the first one. So, instead, an explicit \enlargethispage{2\baselineskip} in addition to the implicit one caused by the class option seems to be the best solution. – caw Sep 9 '19 at 0:16
27

With scrlttr2 I sometimes used \enlargethispage as a quick way to get more text onto the first page, for example:

\enlargethispage{3\baselineskip}

Done before the end of the letter or before the end of the first page, respectively, this allows three further lines on the page. There's even a starred version \enlargethispage* which tries also compression.

Alternatively, you could use the option enlargefirstpage=true which increases the text area if the footer of the first page doesn't use much space, or adjust the pseudolength firstfootvpos or use typearea package features. I quickly took the easy first way, depending on my letter's size. The other ways are described in the KOMA-Script manual.

|improve this answer|||||
  • I had read about \enlargethispage, enlargefirstpage=true and firstfootvpos beforehand. I was not sure which one would be the 'cleanest' way to achieve my goal. "enlargefirstpage=true" and "\enlargethispage{3\baselineskip}" each seem to do the job in my case. Thanks! – user2159 May 6 '11 at 20:23
28

A combination of the options enlargefirstpage and firstfoot=false is a very easy solution to enlarge the first page:

\documentclass[12pt,fromalign=right,fromrule=afteraddress,
               parskip=half,pagenumber=no,DIV=15,
               enlargefirstpage,firstfoot=false]{scrlttr2}

I've removed option foldmarks=true, because it's default. All other options are unchanged from the question.

To see the difference of using the two options as show above, compare the left and right picture:

enter image description here

The right one has been made with:

\documentclass[
  12pt,fromalign=right,fromrule=afteraddress,
  parskip=half,pagenumber=no,DIV=15,
  enlargefirstpage,firstfoot=false
]{scrlttr2}
\usepackage{blindtext}
\begin{document}
\begin{letter}{You\\There}
  \opening{Hey!}
  \blindtext[5]
  \closing{Bye}
\end{letter}
\end{document}

the left one without line

  enlargefirstpage,firstfoot=false

BTW: Even

  enlargefirstpage,firstfoot=yes

would result in a little bit more text on the first page:

enter image description here

so the comment, that firstfoot=yes would result in errors is not true. However, if you really want more text on the first page, I would recommend to use firstfoot=false as originally stated.

|improve this answer|||||
  • These options do not work. I explicitly get errors when using firstfoot=yes – cryptic0 Apr 14 '13 at 20:29
  • @cryptic0 These options do work (from KOMA-Script 2.98, released 4½ years before your comment)! However setting firstfoot=false is part of the answer and firstfoot=yes would be the opposite. – Schweinebacke Oct 8 '18 at 6:47
3

I created an invoice with srlttr2 and on DIN-A4 paper. Had some hours struggling around with the recommendations (enlargefirstpage, firstfoot=false), but without success.

Then I set:

  \setlength{\textheight}{24cm}
  \setlength{\footskip}{0mm}
  \setlength{\footheight}{0mm}

With textheight I can expand the text area to the bottom of the page. That was what I wanted.

|improve this answer|||||

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.