% ====================================================================== % scrlttr2.tex % Copyright (c) Markus Kohm, 2002-2013 % % This file is part of the LaTeX2e KOMA-Script bundle. % % This work may be distributed and/or modified under the conditions of % the LaTeX Project Public License, version 1.3c of the license. % The latest version of this license is in % http://www.latex-project.org/lppl.txt % and version 1.3c or later is part of all distributions of LaTeX % version 2005/12/01 or later and of this work. % % This work has the LPPL maintenance status "author-maintained". % % The Current Maintainer and author of this work is Markus Kohm. % % This work consists of all files listed in manifest.txt. % ---------------------------------------------------------------------- % scrlttr2.tex % Copyright (c) Markus Kohm, 2002-2013 % % Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz, % Version 1.3c, verteilt und/oder veraendert werden. % Die neuste Version dieser Lizenz ist % http://www.latex-project.org/lppl.txt % und Version 1.3c ist Teil aller Verteilungen von LaTeX % Version 2005/12/01 oder spaeter und dieses Werks. % % Dieses Werk hat den LPPL-Verwaltungs-Status "author-maintained" % (allein durch den Autor verwaltet). % % Der Aktuelle Verwalter und Autor dieses Werkes ist Markus Kohm. % % Dieses Werk besteht aus den in manifest.txt aufgefuehrten Dateien. % ====================================================================== % % Chapter about scrlttr2 of the KOMA-Script guide % Maintained by Markus Kohm % % ---------------------------------------------------------------------- % % Kapitel ueber scrlttr2 in der KOMA-Script-Anleitung % Verwaltet von Markus Kohm % % ============================================================================ \KOMAProvidesFile{scrlttr2.tex}% [$Date: 2013-12-13 12:11:01 +0100 (Fr, 13. Dez 2013) $ KOMA-Script guide (chapter: scrlttr2)] \translator{Harald Bongartz\and Georg Grandke\and Raimund Kohl\and Jens-Uwe Morawski\and Stephan Hennig\and Gernot Hassenpflug\and Markus Kohm} % Date of translated german file: 2013/11/07 \chapter{The New Letter Class \Class{scrlttr2}} \labelbase{scrlttr2} \BeginIndex{Class}{scrlttr2}\BeginIndex{}{letters}% \iffalse Since the June 2002 release {\KOMAScript} provides a completely rewritten letter class\ChangedAt{v2.8q}{\Class{scrlttr2}}. Although part of the code is identical to that of the main classes described in \autoref{cha:maincls}, letters \else Letters \fi are quite different from articles, reports, books, and suchlike. That alone justifies a separate chapter about the letter class. But there is another reason for a chapter on \Class{scrlttr2}. This class has been redeveloped from scratch and provides a new user interface different from every other class the author knows of. This new user interface may be uncommon, but the author is convinced both experienced and new {\KOMAScript} users will benefit from its advantages. \section{Variables} \label{sec:scrlttr2.variables}% \BeginIndex{}{variables} Apart from options, commands, environments, counters and lengths, additional elements have already been introduced in \KOMAScript. A typical property of an element is the font style and the option to change it (see \autoref{sec:scrlttr2.textmarkup}, \autopageref{desc:scrlttr2.cmd.setkomafont}). At this point we now introduce variables. Variables have a name by which they are called, and they have a content. The content of a variable can be set independently from time and location of the actual usage in the same way as the contents of a command can be separated from its usage. The main difference between a command and a variable is that a command usually triggers an action, whereas a variable only consists of plain text which is then output by a command. Furthermore, a variable can additionally have a description which can be set and output. This section specifically only gives an introduction to the concept of variables. The following examples have no special meaning. More detailed examples can be found in the explanation of predefined variables of the letter class in the following sections. An overview of all variables is given in \autoref{tab:scrlttr2.variables}. % \begin{desclist} % Umbruchkorrektur \renewcommand*{\abovecaptionskipcorrection}{-\normalbaselineskip}% \desccaption{% Alphabetical list of all supported variables in \Class{scrlttr2}\label{tab:scrlttr2.variables}% }{% Alphabetical list of all supported variables in \Class{scrlttr2} (\emph{continuation})% }% \ventry{addresseeimage}{% instuctions, that will be used to print the Port-Pay\'e head of option \OptionValue{addrfield}{backgroundimage} or the Port-Pay\'e addressee of option \OptionValue{addrfield}{image} % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.addresseeimage})}% \ventry{backaddress}{% return address for window envelopes % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.backaddress})}% \ventry{% backaddressseparator}{separator within the return address % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.backaddressseparator})}% \ventry{ccseparator}{% separator between title of additional addressees, and additional addressees % (\autoref{sec:scrlttr2.document}, \autopageref{desc:scrlttr2.variable.ccseparator})}% \ventry{customer}{% customer number % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.customer})}% \ventry{date}{% date % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.date})}% \ventry{emailseparator}{% separator between e-mail name and e-mail address % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.emailseparator})}% \ventry{enclseparator}{% separator between title of enclosure, and enclosures % (\autoref{sec:scrlttr2.document}, \autopageref{desc:scrlttr2.variable.enclseparator})}% \ventry{faxseparator}{% separator between title of fax, and fax number % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.faxseparator})}% \ventry{firstfoot}{% page\ChangedAt{v3.08}{\Class{scrlttr2}} foot of the note paper % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.firstfoot})}% \ventry{firsthead}{% page\ChangedAt{v3.08}{\Class{scrlttr2}} head of the note paper % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.firsthead})}% \ventry{fromaddress}{% sender's address without sender name % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.fromaddress})}% \ventry{frombank}{% sender's bank account % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.frombank})}% \ventry{fromemail}{% sender's e-mail % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.fromemail})}% \ventry{fromfax}{% sender's fax number % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.fromfax})}% \ventry{fromlogo}{% commands for inserting the sender's logo % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.fromlogo})}% \ventry{frommobilephone}{% \ChangedAt{v3.12}{\Class{scrlttr2}}% sender's mobile telephone number % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.frommobilephone})}% \ventry{fromname}{% complete name of sender % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.fromname})}% \ventry{fromphone}{% sender's telephone number % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.fromphone})}% \ventry{fromurl}{% a URL of the sender, e.\,g., the URL of his homepage % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.fromurl})}% \ventry{fromzipcode}{% zip code or postcode of the sender used at the Port-Pay\'e head of option \OptionValue{addrfield}{PP} % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.fromzipcode})}% \ventry{invoice}{% invoice number % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.invoice})}% \ventry{location}{% more details of the sender % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.location})}% \ventry{myref}{% sender's reference % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.myref})}% \ventry{nextfoot}{% page\ChangedAt{v3.08}{\Class{scrlttr2}} foot using page style \Pagestyle{headings}\IndexPagestyle{headings} or \Pagestyle{myheadings}\IndexPagestyle{myheadings} % (\autoref{sec:scrlttr2.pagestyle}, \autopageref{desc:scrlttr2.variable.nextfoot})}% \ventry{nexthead}{% page\ChangedAt{v3.08}{\Class{scrlttr2}} head using page style \Pagestyle{headings}\IndexPagestyle{headings} or \Pagestyle{myheadings}\IndexPagestyle{myheadings} % (\autoref{sec:scrlttr2.pagestyle}, \autopageref{desc:scrlttr2.variable.nexthead})}% \ventry{phoneseparator}{% separator between title of telephone and telephone number % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.phoneseparator})}% \ventry{place}{% sender's place used near date % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.place})}% \ventry{placeseparator}{% separator between place and date % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.placeseparator})}% \ventry{PPdatamatrix}{% instruction, that print the data array of option \OptionValue{addrfield}{PP} % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.PPdatamatrix})}% \ventry{PPcode}{% instructions for the sender's identification code of option \OptionValue{addrfield}{PP} % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.PPcode})}% \ventry{signature}{% signature beneath the ending of the letter % (\autoref{sec:scrlttr2.closing}, \autopageref{desc:scrlttr2.variable.signature})}% \ventry{specialmail}{% mode of dispatch % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.specialmail})}% \ventry{subject}{% letter's subject % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.subject})}% \ventry{subjectseparator}{% separator between title of subject and subject % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.subjectseparator})}% \ventry{title}{% letter title % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.title})}% \ventry{toaddress}{% address of addressee without addressee name % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.toaddress})}% \ventry{toname}{% complete name of addressee % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.toname})}% \ventry{yourmail}{% date of addressee's referenced mail % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.yourmail})}% \ventry{yourref}{% addressee's reference % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.yourref})}% \ventry{zipcodeseparator}{% separator between the zip code's or postcode's title and the code itself % (\autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.zipcodeseparator})}% \end{desclist} \begin{Declaration} \Macro{setkomavar}% \Parameter{name}\OParameter{description}\Parameter{content}\\ \Macro{setkomavar*}\Parameter{name}\Parameter{description} \end{Declaration} \BeginIndex{Cmd}{setkomavar}% \BeginIndex{Cmd}{setkomavar*}% With the command \Macro{setkomavar} you determine the \PName{content} of the variable \PName{name}. Using an optional argument you can at the same time change the \PName{description} of the variable. In contrast, \Macro{setkomavar*} can only set the \PName{description} of the variable \PName{name}. % Wir haben hier ein anderes Beispiel als in der deutschen Anleitung, aber das % passt hier sehr gut so! \begin{Example} Suppose you have defined a direct dialling as mentioned above and you now want to set the content. You write: \begin{lstlisting} \setkomavar{myphone}{-\,11} \end{lstlisting} In addition, you want to replace the term ``direct dialling'' with ``Connection''. Thus you add the description: \begin{lstlisting} \setkomavar*{myphone}{Connection} \end{lstlisting} or you can combine both in one command: \begin{lstlisting} \setkomavar{myphone}[Connection]{-\,11} \end{lstlisting} \end{Example} By the way: You may delete the content of a variable using an empty \PName{content} argument. You can also delete the description using an empty \PName{description} argument. \begin{Example} Suppose you have defined a direct dialling as mentioned above and you now no longer want a description to be set. You write: \begin{lstlisting} \setkomavar*{myphone}{} \end{lstlisting} You can combine this with the definition of the content: \begin{lstlisting} \setkomavar{myphone}[]{-\,11} \end{lstlisting} So you may setup the content and delete the description using only one command. \end{Example} % \EndIndex{Cmd}{setkomavar}% \EndIndex{Cmd}{setkomavar*}% \begin{Declaration} \Macro{usekomavar}\OParameter{command}\Parameter{name}\\ \Macro{usekomavar*}\OParameter{command}\Parameter{name} \end{Declaration} \BeginIndex{Cmd}{usekomavar}% \BeginIndex{Cmd}{usekomavar*}% In\ChangedAt{v2.9i}{\Class{scrlttr2}} some cases it is necessary for the user to access the content or the description of a variable, and not to leave this only up to the class. This is specially important when you have defined a variable which is not added to the reference fields line. Using the command \Macro{usekomavar} you have access to the content of the variable \PName{name}, whereas the starred version \Macro{usekomavar*} allows you to access the description or title. In \autoref{sec:scrlttr2-experts.variables}, \autopageref{desc:scrlttr2-experts.cmd.newkomavar} you may find more information about defining variable on your own.% \EndIndex{Cmd}{usekomavar}% \EndIndex{Cmd}{usekomavar*}% \begin{Declaration} \Macro{ifkomavar}\Parameter{name}\Parameter{true-code}\Parameter{false-code} \end{Declaration} \BeginIndex{Cmd}{ifkomavar}% This\ChangedAt{v3.03}{\Class{scrlttr2}} command may be used to test, whether or not a variable has already been defined. The \PName{true-code} will be executed only, if the variable already exists. The contents of the variable will not be examined, so it may be empty. The \PName{false-code} will be executed if the variable does not yet exist. Such tests make sense if a variable will be defined at one \File{lco}-file\Index{lco-file=\File{lco}-file} (see \autoref{sec:scrlttr2.lcoFile} from \autopageref{sec:scrlttr2.lcoFile} onward), but used in another \File{lco}-file if it exists only.% % \EndIndex{Cmd}{ifkomavar}% \begin{Declaration} \Macro{ifkomavarempty}\Parameter{name}\Parameter{true-code}% \Parameter{false-code}\\ \Macro{ifkomavarempty*}\Parameter{name}\Parameter{true-code}% \Parameter{false-code} \end{Declaration} \BeginIndex{Cmd}{ifkomavarempty}% \BeginIndex{Cmd}{ifkomavarempty*}% With\ChangedAt{v2.9i}{\Class{scrlttr2}} these commands you may check whether or not the expanded content or description of a variable is empty. The \PName{true-code} will be executed if the content or description is empty. Otherwise the \PName{false-code} will be executed. The starred variant handles the description of a variable, the unstarred variant handles the contents.% \EndIndex{Cmd}{ifkomavarempty*}% \EndIndex{Cmd}{ifkomavarempty}% % \EndIndex{}{variables}% \section{Pseudo-Lengths} \label{sec:scrlttr2.pseudoLength} \BeginIndex{}{pseudo-lengths} \LaTeX{} processes length with commands \Macro{newlength}, \Macro{setlength}, \Macro{addtolength}, and \Macro{the\PName{length}}. Many packages also use macros, that are commands, to storage lengths. \KOMAScript{} extends the method of storing length at macros by some commands similar to the commands above, that are used to handle real lengths. \KOMAScript calls this kind of lengths, that are stored at macros instead of real \LaTeX{} lengths, pseudo-lengths. A list of all pseudo-lengths in \Class{scrlttr2} is shown in \autoref{tab:scrlttr2-experts.pseudoLength} starting at \autopageref{tab:scrlttr2-experts.pseudoLength}. The meaning of the various pseudo-lengths is shown graphically in \autoref{fig:scrlttr2-experts.pseudoLength}. The dimensions used in the figure correspond to the default settings of \Class{scrlttr2}. More detailed description of the individual pseudo-lengths is found in the individual sections of this chapter. Normally users would not need to define a pseudo-length on their own. Because of this, definition of pseudo-lengths will be described in the expert part at \autoref{sec:scrlttr2-experts.pseudoLengths}, \autopageref{desc:scrlttr2-experts.cmd.@newplength}. Setting pseudo-lengths to new values is also a work for advanced users. So this will be described in the expert part too at \autopageref{desc:scrlttr2-experts.cmd.@setplength}. Please note\textnote{Attention!}: Even though these pseudo-lengths are internally implemented as macros, the commands for pseudo-length management expect only the names of the pseudo-lengths not the macros representing the pseudo-lengths. The names of pseudo-lengths are without backslash at the very beginning similar to the names of \LaTeX{} counters and in opposite to macros or \LaTeX{} lengths. \begin{Declaration} \Macro{useplength}\Parameter{name} \end{Declaration} \BeginIndex{Cmd}{useplength}% Using this command you can access the value of the pseudo-length with the given \PName{name}. This is one of the few user commands in connection with pseudo-lengths. Of course this command can also be used with an \File{lco}-file\Index{lco-file=\File{lco}-file} (see \autoref{sec:scrlttr2.lcoFile} ab \autopageref{sec:scrlttr2.lcoFile}).% % \EndIndex{Cmd}{useplength}% \begin{Declaration} \Macro{setlengthtoplength}% \OParameter{factor}\Parameter{length}\Parameter{pseudo-length}\\ \Macro{addtolengthplength}% \OParameter{factor}\Parameter{length}\Parameter{pseudo-length} \end{Declaration} \BeginIndex{Cmd}{setlengthtoplength}% \BeginIndex{Cmd}{addtolengthplength}% \begin{Explain}% While you can simply prepend a factor to a length, this is not possible with pseudo-lengths. Suppose you have a length \Macro{test} with the value 2\Unit{pt}; then \texttt{3\Macro{test}} gives you the value 6\Unit{pt}. Using pseudo-lengths instead, \texttt{3\Macro{useplength}\PParameter{test}} would give you 32\Unit{pt}. This is especially annoying if you want a real \PName{length} to take the value of a \PName{pseudo-length}. \end{Explain} Using the command \Macro{setlengthtoplength} you can assign the multiple of a \PName{pseudo-length} to a real \PName{length}. Here, instead of prepending the \PName{factor} to the \PName{pseudo-length}, it is given as an optional argument. You should also use this command when you want to assign the negative value of a \PName{pseudo-length} to a \PName{length}. In this case you can either use a minus sign or \PValue{-1} as the \PName{factor}. The command \Macro{addtolengthplength} works very similarly; it adds the multiple of a \PName{pseudo-length} to the \PName{length}. % \EndIndex{Cmd}{setlengthtoplength}% \EndIndex{Cmd}{addtolengthplength}% % \EndIndex{}{pseudo-lengths} \LoadCommon[scrlttr]{0} % \section{Early or Late Selection of Options} \LoadCommon[scrlttr]{1} % \section{Compatibility with Earlier Versions of % \KOMAScript{}} \LoadCommon[scrlttr]{2} % \section{Draft-Mode} \LoadCommon[scrlttr]{3} % \section{Page Layout} Normally it makes no sense to distinguish letters with single-side layout and letters with double-side layout. Mostly letters are not bound like books. Therefor each page will be viewed on its own. This is also true if both sides of the paper sheet will be used for printing. Vertical adjustment is unusual at letters too. Nevertheless, if you need or want it, you may read the description of \Macro{raggedbottom} and \Macro{flushbottom} in \autoref{sec:maincls.typearea} at \autopageref{desc:maincls.cmd.flushbottom}.% % \EndIndex{}{page>layout} \section{General Structure of Letter Documents} \label{sec:scrlttr2.document} \BeginIndex{}{letter>structure} The general structure of a letter document differs somewhat from the structure of a normal document. Whereas a book document in general contains only one book, a letter document can contain several letters. As illustrated in \autoref{fig:scrlttr2.document}, a letter document consists of a preamble, the individual letters, and the closing. \begin{figure} \KOMAoptions{captions=bottombeside}% \setcapindent{0pt}% \begin{captionbeside}[{% General structure of a letter document with several individual letters% }]{% General structure of a letter document with several individual letters (the structure of a single letter is shown in \autoref{fig:scrlttr2.letter})% \label{fig:scrlttr2.document}% }[l] \begin{minipage}[b]{.667\linewidth} \centering\small\setlength{\fboxsep}{1.5ex}% \addtolength{\linewidth}{-\dimexpr2\fboxrule+2\fboxsep\relax}% \fbox{\parbox{\linewidth}{\raggedright% \Macro{documentclass}\OParameter{\dots}\PParameter{scrlttr2}\\ \dots\\ {\centering\emph{settings for all letters}\\} \dots\\ \Macro{begin}\PParameter{document}\\ \dots\\ {\centering\emph{settings for all letters}\\} \dots\\ }}\\ \fbox{\parbox{\linewidth}{\raggedright% \Macro{begin}\PParameter{letter}\Parameter{addressee}\\ \dots\\ {\centering\emph{content of the individual letter}\\} \dots\\ \Macro{end}\PParameter{letter}\\ }}\\[2pt] \parbox{\linewidth}{\raggedright\vspace{-.5ex}\vdots\vspace{1ex}}\\ \fbox{\parbox{\linewidth}{\raggedright% \Macro{end}\PParameter{document}\\ }}\\[\dimexpr\fboxsep+\fboxrule\relax] \end{minipage} \end{captionbeside} \end{figure} The preamble comprises all settings that in general concern all letters. Most of them can also be overwritten in the settings of the individual letters. The only setting which can not be changed within a single letter is compatibility to prior versions of \Class{scrlttr2} (see option \Option{version} in \autoref{sec:scrlttr2.compatibilityOptions}, \autopageref{desc:scrlttr2.option.version}). It is recommended that only general settings such as the loading of packages and the setting of options be placed before \Macro{begin}\PParameter{document}. All settings that comprise the setting of variables or other text features should be done after \Macro{begin}\PParameter{document}. This is particularly recommended when the \Package{babel} package\IndexPackage{babel} (see \cite{package:babel}) is used, or language-dependent variables of \Class{scrlttr2} are to be changed. The closing usually consists only of \Macro{end}\PParameter{document}. Of course you can also insert additional comments at this point. \begin{figure} \KOMAoptions{captions=bottombeside}% \setcapindent{0pt}% \begin{captionbeside}[{% General structure of a single letter within a letter document% }]{% General structure of a single letter within a letter document (see also \autoref{fig:scrlttr2.document})% \label{fig:scrlttr2.letter}}[l] \begin{minipage}[b]{.667\linewidth}% \centering\small\setlength{\fboxsep}{1.5ex}% \addtolength{\linewidth}{-\dimexpr2\fboxrule+2\fboxsep\relax}% \fbox{\parbox{\linewidth}{\raggedright% \Macro{begin}\PParameter{letter}% \OParameter{Optionen}\Parameter{addressee}\\ \dots\\[\dp\strutbox] {\centering\emph{settings for this letter}\\} \dots\\ \Macro{opening}\Parameter{opening}\\ }}\\[1pt] \fbox{\parbox{\linewidth}{\raggedright% \dots\\[\dp\strutbox] {\centering\emph{letter text}\\} \dots\\ }}\\[1pt] \fbox{\parbox{\linewidth}{\raggedright% \Macro{closing}\Parameter{closing}\\ \Macro{ps}\\ \dots\\[\dp\strutbox] {\centering\emph{postscript}\\} \dots\\ \Macro{encl}\Parameter{enclosures}\\ \Macro{cc}\Parameter{additional addressees}\\ \Macro{end}\PParameter{letter}\\ }}\\[\dimexpr\fboxsep+\fboxrule\relax] \end{minipage} \end{captionbeside} \end{figure} As shown in \autoref{fig:scrlttr2.letter}, every single letter itself consists of an introduction, the letter body, and the closing. In the introduction, all settings pertaining only to the current letter are defined. It is important that this introduction always ends with \Macro{opening}\IndexCmd{opening}. Similarly, the closing always starts with \Macro{closing}\IndexCmd{closing}. The two arguments \PName{opening} and \PName{closing} can be left empty, but both commands must be used and must have an argument. It should be noted that several settings can be changed between the individual letters. Such changes then have an effect on all subsequent letters. For reasons of maintainability of your letter documents, it is however not recommended to use further general settings with limited scope between the letters. \begin{Declaration} \XMacro{begin}\PParameter{\Environment{letter}}% \OParameter{options}\Parameter{addressee}\\ \quad\dots\\ \XMacro{end}\PParameter{letter} \end{Declaration} \BeginIndex{Env}{letter}% \BeginIndex{}{addressee}% The \Environment{letter} environment is one of the key environments of the letter class. A special\textnote{\KOMAScript{} vs. standard classes} \Class{scrlttr2} feature are optional arguments to the \Environment{letter} environment. These \PName{options} are executed internally via the \Macro{KOMAoptions} command. The \PName{addressee} is a mandatory argument passed to the \Environment{letter} environment. Parts\textnote{Attention!} of the addressee contents are separated by double backslashes. These parts are output on individual lines in the address field. Nevertheless, the double backslash should not be interpreted as a certain line break. Vertical material such as paragraphs or vertical space is not permitted within \PName{addressee}, and could lead to unexpected results and error messages, as is the case also for the standard letter class. \begin{Example} \phantomsection\label{desc:scrlttr2.env.letter.example}% Assumed, someone wants to send a letter to Joana Public. A minimalistic letter document for this may be: \begin{lstcode} \documentclass[version=last]{scrlttr2} \usepackage[english]{babel} \begin{document} \begin{letter}{Joana Public\\ Hillside 1\\ 12345 Public-City} \end{letter} \end{document} \end{lstcode} However, this would not result in any printable output. At least there would not be an addressee at the note paper sheet. The reason for this will be explained at the description of command \Macro{opening} at \autopageref{desc:scrlttr2.cmd.opening}. \end{Example} % \EndIndex{}{addressee}% \EndIndex{Env}{letter}% \begin{Declaration} \Macro{AtBeginLetter}\Parameter{instruction code}\\ \Macro{AtEndLetter}\Parameter{instruction code} \end{Declaration} \BeginIndex{Cmd}{AtBeginLetter}% \BeginIndex{Cmd}{AtEndLetter}% {\LaTeX} enables the user to declare \PName{instruction code} whose execution is delayed until a determined point. Such points are called \emph{hooks}\Index{hook}. Known macros for using hooks are \Macro{AtBeginDocument}\IndexCmd{AtBeginDocument} and \Macro{AtEndOfClass}\IndexCmd{AtEndOfClass} at the \LaTeX{} kernel. The class \Class{scrlttr2} provides two more hooks. The \PName{instruction code} for these may be declared using \Macro{AtBeginLetter} and \Macro{AtEndLetter}\ChangedAt{v2.95}{\Class{scrlttr2}}. Originally, hooks were provided for package and class authors, so they are documented in \cite{latex:clsguide} only, and not in \cite{latex:usrguide}. However, with letters there are useful applications of \Macro{AtBeginLetter} as the following example may illustrate. % \begin{Example} It is given that one has to set multiple letters with questionnaires within one document. Questions are numbered automatically within single letters using a counter. Since, in contrast to page numbering, that counter is not known by \Class{scrlttr2}, it would not be reset at the start of each new letter. Given that each questionnaire contains ten questions, question~1 would get number~11 in the second letter. A solution is to reset this counter at the beginning of each new letter: \begin{lstlisting} \newcounter{Question} \newcommand{\Question}[1]{% \refstepcounter{Question}\par \noindent\begin{tabularx}{\textwidth}{l@{}X} \theQuestion:~ & #1\\ \end{tabularx}% }% \AtBeginLetter{\setcounter{Question}{0}} \end{lstlisting} This way first question remains question~1, even in the 1001st letter. Of course the definition at this example needs package \Package{tabularx}\IndexPackage{tabularx} (see \cite{package:tabularx}). \end{Example} % \EndIndex{Cmd}{AtEndLetter}% \EndIndex{Cmd}{AtBeginLetter}% \begin{Declaration} \Macro{opening}\Parameter{opening} \end{Declaration} \BeginIndex{Cmd}{opening}% This is one of the most important commands in \Class{scrlttr2}. For the user it may seem that only the \PName{opening}\Index{letter>opening}, e.\,g., ``Dear Mrs~\dots'', is typeset, but\textnote{Attention!} the command also typesets the folding marks\Index{folding marks}, letterhead\Index{letter>head}, address field\Index{address field}, reference fields line\Index{reference line}, subject\Index{subject}, the page footer\Index{page>footer} and others. In short, without \Macro{opening} there is no letter. And if you want to print a letter without opening you have to use an \Macro{opening} command with an empty argument. \begin{Example} Let's extend the example from \autopageref{desc:scrlttr2.env.letter.example} by an opening: \lstinputcode[xleftmargin=1em]{letter-0.tex} This will result in a note paper sheet shown in \autoref{fig:scrlttr2.letter-0}. \begin{figure} \setcapindent{0pt}% \begin{captionbeside}[{Example: letter with addressee and opening}]{% result of a minimalistic letter with addressee and opening only (date and folding marks are defaults of DIN-letters)}[l] \frame{\includegraphics[width=.4\textwidth]{letter-0}} \end{captionbeside} \label{fig:scrlttr2.letter-0} \end{figure} \end{Example} \iffalse% Umbruchkorrekturtext In the early days of computer-generated letters, programs did not have many capabilities, therefore the letters seldom had an opening. Today the capabilities have been enhanced. Thus personal openings are very common, even in mass-production advertising letters.% \fi % \EndIndex{Cmd}{opening}% \begin{Declaration} \Macro{closing}\Parameter{closing phrase} \end{Declaration} \BeginIndex{Cmd}{closing}% The main purpose of the command \Macro{closing} is to typeset the \PName{closing phrase}\Index{closing}. This may even consists of multiple lines. The lines should be separated by double backslash. Paragraph breaks inside the \PName{closing phrase} are not allowed. Beyond that the command also typesets the content of the variable \Variable{signature}. More information about the signature and the configuration of the signature may be found at \autoref{sec:scrlttr2.closing} ab \autopageref{desc:scrlttr2.variable.signature}. \begin{Example} Let's extend the our example by some lines of text and a closing phrase: \lstinputcode[xleftmargin=1em]{letter-1.tex} This will result in a the letter shown in \autoref{fig:scrlttr2.letter-1}. \begin{figure} \setcapindent{0pt}% \begin{captionbeside}[{Example: letter with addressee, opening, text, and closing}]{% result of a small letter with addressee, opening, text, and closing (date and folding marks are defaults of DIN-letters)}[l] \frame{\includegraphics[width=.4\textwidth]{letter-1}} \end{captionbeside} \label{fig:scrlttr2.letter-1} \end{figure} \end{Example} % \EndIndex{Cmd}{closing}% \begin{Declaration} \Macro{ps} \end{Declaration}% \BeginIndex{Cmd}{ps}% This instruction merely switches to the postscript. Hence, a new paragraph begins, and a vertical distance\,---\,usually below the signature\,---\,is inserted. The command \Macro{ps} is followed by normal text. If you want the postscript to be introduced with the acronym ``PS:'' , which by the way is written without a full stop, you have to type this yourself. The acronym is typeset neither automatically nor optionally by the class \Class{scrlttr2}. \begin{Example} The example letter extended by a postscript \lstinputcode[xleftmargin=1em]{letter-2.tex} results in \autoref{fig:scrlttr2.letter-2}. \begin{figure} \setcapindent{0pt}% \begin{captionbeside}[{Example: letter with addressee, opening, text, closing, and postscript}]{% result of a small letter with addressee, opening, text, closing, and postscript (date and folding marks are defaults of DIN-letters)}[l] \frame{\includegraphics[width=.4\textwidth]{letter-2}} \end{captionbeside} \label{fig:scrlttr2.letter-2} \end{figure} \end{Example} \begin{Explain} In the time when letters were written by hand it was quite common to use a postscript because this was the only way to add information which one had forgotten to mention in the main part of the letter. Of course, in letters written with {\LaTeX} you can insert additional lines easily. Nevertheless, it is still popular to use the postscript. It gives one a good possibility to underline again the most important or sometimes the less important things of the particular letter. \end{Explain} % \EndIndex{Cmd}{ps} \begin{Declaration} \Macro{cc}\Parameter{distribution list}\\ \Macro{setkomavar}\PParameter{\Variable{ccseparator}}% \OParameter{description}\Parameter{content} \end{Declaration} \BeginIndex{Cmd}{cc}% \BeginIndex{Variable}{ccseparator}% With the command \Macro{cc}% \Index{addressee>additional}\Index{distribution list}\Index{carbon copy} it is possible to typeset a \PName{distribution list}. The command takes the \PName{distribution list} as its argument. If the content of the variable \Variable{ccseparator}\Index{separator}\Index{delimiter} is not empty, then the name and the content of this variable is inserted before \PName{distribution list}. In this case the \PName{distribution list} will be indented appropriately. It is a good idea\textnote{Hint!} to set the \PName{distribution list} \Macro{raggedright}\IndexCmd{raggedright} and to separate the individual entries with a double backslash. \begin{Example} This time, the example letter should be send not only to the chairman, but also to all club members: \lstinputcode[xleftmargin=1em]{letter-3.tex}% The result is shown in \autoref{fig:scrlttr2.letter-3}. \begin{figure} \setcapindent{0pt}% \begin{captionbeside}[{Example: letter with addressee, opening, text, closing, postscript, and distribution list}]{% result of a small letter with addressee, opening, text, closing, postscript, and distribution list (date and folding marks are defaults of DIN-letters)}[l] \frame{\includegraphics[width=.4\textwidth]{letter-3}} \end{captionbeside} \label{fig:scrlttr2.letter-3} \end{figure} \end{Example} In front of the distribution list a vertical gap is inserted automatically.% % \EndIndex{Variable}{ccseparator}% \EndIndex{Cmd}{cc}% \begin{Declaration} \Macro{encl}\Parameter{enclosures}\\ \Macro{setkomavar}\PParameter{\Variable{enclseparator}}% \OParameter{description}\Parameter{content} \end{Declaration} \BeginIndex{Cmd}{encl}% \BeginIndex{Variable}{enclseparator}% The \PName{enclosures} have the same structure as the distribution list. The only difference is that here the enclosures starts with the name and content of the variable \Variable{enclseparator}\Index{separator}\Index{delimiter}. \begin{Example} Now, the example letter will be extended by some paragraphs from the constitution. These will be added as an enclosure. The description title will be changed also, because there is only one enclosure and the default may be prepared for several enclosures: \lstinputcode[xleftmargin=1em]{letter-4.tex} This will result in \autoref{fig:scrlttr2.letter-4}. \begin{figure} \setcapindent{0pt}% \begin{captionbeside}[{Example: letter with addressee, opening, text, closing, postscript, distribution list, and enclosure}]{% result of a small letter with addressee, opening, text, closing, postscript, distribution list, and enclosure (date and folding marks are defaults of DIN-letters)}[l] \frame{\includegraphics[width=.4\textwidth]{letter-4}} \end{captionbeside} \label{fig:scrlttr2.letter-4} \end{figure} \end{Example} % \EndIndex{Cmd}{encl}% \EndIndex{Variable}{enclseparator}% % \EndIndex{}{letter>structure} \section{Selection of Document or Letter Font Size} \LoadCommon[scrlttr]{4} % \section{Selection of Document Font Size} \begin{Example} Assumed, the example is a letter to \emph{``The friends of insane font sizes''} and therefor it should be printed with 14\Unit{pt} instead of 12\Unit{pt}. Only a simple change of the first line is needed:% \lstinputcode[xleftmargin=1em]{letter-6}% Alternatively the option may be set at the optional argument of the \Environment{letter} environment:% \lstinputcode[xleftmargin=1em]{letter-5}% In the case of this late change of the font size no recalculation of the type area will happen. Because of this, the two results of \autoref{fig:scrlttr2.letter-5-6} differ. \begin{figure} \centering \frame{\includegraphics[width=.4\textwidth]{letter-5}}\quad \frame{\includegraphics[width=.4\textwidth]{letter-6}} \caption[{Example: letter with addressee, opening, text, closing, postscript, distribution list, enclosure, and insane large font size}]{% result of a small letter with addressee, opening, text, closing, postscript, distribution list, enclosure, and insane large font size (date and folding marks are defaults of DIN-letters): at left one the font size has been defined by the optional argument of \Environment{letter}, at the right one the optional argument of \Macro{documentclass} has been used} \label{fig:scrlttr2.letter-5-6} \end{figure} \end{Example} % \EndIndex{Option}{fontsize~=\PName{size}}% % \EndIndex{}{font>size} \LoadCommon[scrlttr]{5} % \section{Text Markup} \section{Note Paper} \label{sec:scrlttr2.firstpage} \BeginIndex{}{note paper}% \BeginIndex{}{letter>first page} The note paper is the first page and therefore the signboard of each letter. In business scope often preprinted forms are used, that already contains elements like the letter head with the sender's information and logo. \KOMAScript{} provides to position these elements independent. With this it is not only possible to replicate the note paper directly, but also to complete the destined fields instantaneously. The independent position is provided by pseudo-lengths (see \autoref{sec:scrlttr2.pseudoLength} from \autopageref{sec:scrlttr2.pseudoLength} onward). A schematic display of the note page and the used variable is shown by \autoref{fig:scrlttr2.variables}. Thereby the names of the variables are printed boldly for better distinction from the commands and their arguments. Following pages\Index{page>following}\Index{following page} are different from the note paper. Following pages in the meaning of this manual are all letter pages but the first one. \begin{figure} \centering \includegraphics[scale=0.99]{varDIN} \caption{schematic display of the note paper with the most important commands and variables for the drafted elements} \label{fig:scrlttr2.variables} \end{figure} \begin{Declaration} \KOption{foldmarks}\PName{selection} \end{Declaration} \BeginIndex{Option}{foldmarks~=\PName{selection}}% Foldmarks\Index{foldmark} or folding marks\Index{folding mark} are tiny horizontal rules at the left margin or tiny vertical rules at the top margin. \KOMAScript{} currently provides three configurable horizontal folding marks and one configurable vertical folding mark. Additionally it provides a horizontal hole puncher mark, also known as page middle mark. This additional mark cannot be moved vertically. This option activates or deactivates folding marks for vertical two-, three- or four-panel folding, and a single horizontal folding, of the letter, whereby the folding need not result in equal-sized parts. The position of the four horizontal and the single vertical marks are configurable via pseudo-lengths (see \autoref{sec:scrlttr2-experts.foldmarks} from \autopageref{desc:scrlttr2-experts.plength.foldmarkvpos} onwards). The user has a choice: Either one may use the standard values for simple switches, as described in \autoref{tab:truefalseswitch}, \autopageref{tab:truefalseswitch}, to activate or deactivate at once all configured folding marks on the left and upper edges of the paper; or\ChangedAt{v2.97e}{\Class{scrlttr2}} one may specify by one or more letters, as listed in \autoref{tab:scrlttr2.foldmark}, the use of the individual folding marks independently. Also in the latter case the folding marks will only be shown if they have not been switched off generally with one of \PValue{false}, \PValue{off}, or \PValue{no}. The exact positioning of the folding marks is specified in the user settings, that is, the \File{lco} files (see \autoref{sec:scrlttr2.lcoFile} from \autopageref{sec:scrlttr2.lcoFile} onward) chosen for a letter. Default values are \PValue{true} and \PValue{TBMPL}. % \begin{table} % \centering \KOMAoptions{captions=topbeside}% \setcapindent{0pt}% % \caption \begin{captionbeside}{% Combinable values for the configuration of folding marks with option \Option{foldmarks}% }[l] \begin{tabular}[t]{ll} \toprule \PValue{B} & activate upper horizontal foldmark on left paper edge\\% \PValue{b} & deactivate upper horizontal foldmark on left paper edge\\% \PValue{H} & activate all horizontal folding marks on left paper edge\\% \PValue{h} & deactivate all horizontal folding marks on left paper edge\\% \PValue{L} & activate left vertical foldmark on upper paper edge\\% \PValue{l} & deactivate left vertical foldmark on upper paper edge\\% \PValue{M} & activate middle horizontal foldmark on left paper edge\\% \PValue{m} & deactivate middle horizontal foldmark on left paper edge\\% \PValue{P} & activate punch or center mark on left paper edge\\% \PValue{p} & deactivate punch or center mark on left paper edge\\% \PValue{T} & activate lower horizontal foldmark on left paper edge\\% \PValue{t} & deactivate lower horizontal foldmark on left paper edge\\% \PValue{V} & activate all vertical folding marks on upper paper edge\\% \PValue{v} & deactivate all vertical folding marks on upper paper edge\\% \bottomrule \end{tabular} \end{captionbeside} \label{tab:scrlttr2.foldmark} \end{table} % \begin{Example} Assume that you would like to deactivate all folding marks except the punching mark. This you can accomplish with, for example: \begin{lstlisting} \KOMAoptions{foldmarks=blmt} \end{lstlisting} as long as the defaults have not been changed previously. If some changes might have been made before, a safer method should be used. This changes our example a little bit: \lstinputcode[xleftmargin=1em]{letter-7}% The result is shown in \autoref{fig:scrlttr2.letter-7}. \begin{figure} \setcapindent{0pt}% \begin{captionbeside}[{Example: letter with addressee, opening, text, closing, postscript, distribution list, enclosure, and hole puncher mark}]{% result of a small letter with addressee, opening, text, closing, postscript, distribution list, enclosure, and hole puncher mark (the date is a default of DIN-letters)}[l] \frame{\includegraphics[width=.4\textwidth]{letter-7}} \end{captionbeside} \label{fig:scrlttr2.letter-7} \end{figure} \end{Example} \BeginIndex{FontElement}{foldmark}% The color of the folding mark may be changed using\ChangedAt{v2.97c}{\Class{scrlttr2}} using the commands \Macro{setkomafont} and \Macro{addtokomafont} (see \autoref{sec:scrlttr2.textmarkup}, \autopageref{desc:scrlttr2.cmd.setkomafont}) with element \FontElement{foldmark}. Default is not change.% \EndIndex{FontElement}{foldmark}% % \EndIndex{Option}{foldmarks~=\PName{selection}}% \begin{Declaration} \KOption{enlargefirstpage}\PName{simple switch} \end{Declaration} \BeginIndex{Option}{enlargefirstpage~=\PName{simple switch}}% The first page of a letter always uses a different page layout. The \Class{scrlttr2} class provides a mechanism to calculate height and vertical alignment of header and footer of the first page independently of the following pages. If, as a result, the footer of the first page would reach into the text area, this text area is automatically made smaller using the \Macro{enlargethispage}\IndexCmd{enlargethispage} macro. On the other hand, if the text area should become larger, supposing that the footer on the first page allows that, you can use this option. At best, a little more text will then fit on the first page. See also the description of the pseudo-length \PLength{firstfootvpos} on \autopageref{desc:scrlttr2-experts.plength.firstfootvpos}. This option can take the standard values for simple switches, as listed in \autoref{tab:truefalseswitch}, \autopageref{tab:truefalseswitch}. Default is \PValue{false}. % \EndIndex{Option}{enlargefirstpage~=\PName{simple switch}}% \begin{Declaration} \KOption{firsthead}\PName{simple switch} \end{Declaration} \BeginIndex{Option}{firsthead~=\PName{simple switch}}% The\ChangedAt{v2.97e}{\Class{scrlttr2}} letterhead is usually the topmost element of the note paper. This option determines whether the letterhead will be typeset at all. The option accepts the standard values for simple keys, given in \autoref{tab:truefalseswitch} at \autopageref{tab:truefalseswitch}. Default is for the letterhead to be set.% % \EndIndex{Option}{firsthead~=\PName{simple switch}}% \begin{Declaration} \KOption{fromalign}\PName{method} \end{Declaration} \BeginIndex{}{letterhead}% \BeginIndex{}{letter>head}% \BeginIndex{Option}{fromalign~=\PName{method}}% Option\important{\Option{fromalign}} \Option{fromalign} defines the placement of the return address in the letterhead of the first page. Apart from the various options for positioning the return address in the letterhead, there is also the option\ChangedAt{v2.97e}{\Class{scrlttr2}} of adding the return address to the sender's extension\Index{sender's extension}. Further\textnote{Attention!}, this option serves as a switch to activate or deactivate the letterhead extensions. If these extensions are deactivated, some other options will have no effect. This will be noted in the explanations of the respective options. Possible values for \Option{fromalign} are shown in \autoref{tab:scrlttr2.fromalign}. Default is \PValue{left}.% % \begin{table} \caption[{Available values for option \Option{fromalign} with \Class{scrlttr2}}]{Available values for option \Option{fromalign} to define the position of the from address in the letterhead with \Class{scrlttr2}} \label{tab:scrlttr2.fromalign} \begin{desctabular} \entry{\PValue{center}, \PValue{centered}, \PValue{middle}}{% return address centered; an optional logo will be above the extended return address; letterhead extensions will be activated}% \entry{\PValue{false}, \PValue{no}, \PValue{off}}{% standard design will be used for the return address; the letterhead extensions are deactivated}% \entry{\PValue{left}}{% left-justified return address; an optional logo will be right justified; letterhead extensions will be activated}% \entry{\PValue{locationleft}, \PValue{leftlocation}}{% return address is set left-justified in the sender's extension; a logo, if applicable, will be placed above it; the letterhead is automatically deactivated but can be reactivated using option \Option{firsthead}.}% \entry{\PValue{locationright}, \PValue{rightlocation}, \PValue{location}}{% return address is set right-justified in the sender's extension; a logo, if applicable, will be placed above it; the letterhead is automatically deactivated but can be reactivated using option \Option{firsthead}.}% \entry{\PValue{right}}{% right-justified return address; an optional logo will be left justified; letterhead extensions will be activated}% \end{desctabular} \end{table} % \EndIndex{Option}{fromalign~=\PName{method}}% \begin{Declaration} \KOption{fromrule}\PName{position}\\ \Macro{setkomavar}\PParameter{\Variable{fromname}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{fromaddress}}% \OParameter{description}\Parameter{contents} \end{Declaration} \BeginIndex{Option}{fromrule~=\PName{position}}% \BeginIndex{Variable}{fromaddress}% \BeginIndex{Variable}{fromname}% The\important{\Variable{fromname}} sender's name will be determined by variable \Variable{fromname}. Thereby the \PName{description} (see also \autoref{tab:scrlttr2.fromTerm}, \autopageref{tab:scrlttr2.fromTerm}) will not be used by the predefined letterheads. At\important{\OptionValue{fromrule}{aftername}} the extended letterhead an optional horizontal rule below the name may be selected using \OptionValue{fromrule}{aftername}. Alternatively\important[i]{\begin{tabular}{@{}l@{}} \KOption{fromrule}\\\quad\PValue{afteraddress}\end{tabular}} this rule may be placed below the while sender using \OptionValue{fromrule}{afteraddress}. A summary of all available rule position settings shows \autoref{tab:scrlttr2.fromrule}. The length of this rule is determined by pseudo-length \PLength{fromrulewidth}\IndexPLength[indexmain]{fromrulewidth}. \begin{table} \caption[{Possible values of option \Option{fromrule} with \Class{scrlttr2}}]{Possible values of option \Option{fromrule} for the position of the rule in the from address with \Class{scrlttr2}} \label{tab:scrlttr2.fromrule} \begin{desctabular} \entry{\PValue{afteraddress}, \PValue{below}, \PValue{on}, \PValue{true}, \PValue{yes}}{% rule below the return address}% \entry{\PValue{aftername}}{% rule directly below the sender's name}% \entry{\PValue{false}, \PValue{no}, \PValue{off}}{% no rule}% \end{desctabular} \end{table} Default for the rule at the extended letterhead is \PValue{false}. But at the standard letterhead the rule will always be placed below the sender's name. The\important{\Variable{fromaddress}} sender's address follows below the name. The \PName{content} of variable \Variable{fromaddress} determines this address. The \PName{description} (see also \autoref{tab:scrlttr2.fromTerm}) will not be used at the predefined letterheads \BeginIndex{FontElement}{fromaddress}% \BeginIndex{FontElement}{fromname}% \BeginIndex{FontElement}{fromrule}% The font of the whole address is determined by the element \FontElement{fromaddress}\IndexFontElement{fromaddress}% \important{\FontElement{fromaddress}}. Modifications to this may be defined with element \FontElement{fromname}\IndexFontElement{fromname}% \important{\FontElement{fromname}} for the sender's name and with element \FontElement{fromrule}\IndexFontElement{fromrule}% \important{\FontElement{fromrule}} for the rule, that may be activated using option \Option{fromrule}. Nevertheless changing the font style of the rule would make sense. But you may use the elements also to change the color, e.\,g. color the rule gray instead of black. See \cite{package:xcolor} for information about colors.% % \EndIndex{FontElement}{fromrule}% \EndIndex{FontElement}{fromname}% \EndIndex{FontElement}{fromaddress}% \begin{Example} Let's now define the name of the sender at our letter example: \lstinputcode[xleftmargin=1em]{letter-8.tex} \begin{figure} \centering \frame{\includegraphics[width=.4\textwidth]{letter-8}}\quad \frame{\includegraphics[width=.4\textwidth]{letter-9}} \caption[{Example: letter with sender, addressee, opening, text, closing, postscript, distribution list, and enclosure}] {result of a small letter with sender, addressee, opening, text, closing, postscript, distribution list, and enclosure (date and folding marks are defaults of DIN-letters): at left one the standard letterhead using \OptionValue{fromalign}{false}, at right one the extended letterhead using \OptionValue{fromalign}{center}} \label{fig:scrlttr2.letter-8-9} \end{figure} First of all not the extended but the standard letterhead has been used. The result is shown at the left side of \autoref{fig:scrlttr2.letter-8-9}. The right side shows almost the same letter but with \OptionValue{fromalign}{center} and therefore with the extended letterhead. You may see, that this variation is without any rule. For the first time \autoref{fig:scrlttr2.letter-8-9} also shows a signature below the closing phrase. This has been generated automatically from the sender's name. More information about configuration of the signature may be found in \autoref{sec:scrlttr2.closing} from \autopageref{sec:scrlttr2.closing} onward. Now, the letter with extended letterhead should use option \Option{fromrule} to print a rule below the sender's name:% \lstinputcode[xleftmargin=1em]{letter-11.tex}% The result may be found at the right side of \autoref{fig:scrlttr2.letter-10-11}. \begin{figure} \centering \frame{\includegraphics[width=.4\textwidth]{letter-10}}\quad \frame{\includegraphics[width=.4\textwidth]{letter-11}} \caption[{Example: letter with sender, separation rule, addressee, opening, text, closing, signature, postscript, distribution list, enclosure, and puncher hole mark}] {result of a small letter with sender, separation rule, addressee, opening, text, closing, signature, postscript, distribution list, enclosure and puncher hole mark (the date is a default of DIN-letters): at left one the standard letterhead using \OptionValue{fromalign}{false}, at right one the extended letterhead using \OptionValue{fromalign}{center}} \label{fig:scrlttr2.letter-10-11} \end{figure} In difference to this, the left letter has been set once again with the standard letter head, that does not react on the additional option. \end{Example} An\textnote{Attention!} important note concerns the sender's address: within the sender's address, parts such as street, P.O.~Box, state, country, etc., are separated with a double backslash. Depending on how the sender's address is used, this double backslash will be interpreted differently and therefore is not strictly always a line break. Paragraphs, vertical spacing and the like are usually not allowed within the sender's address declaration. One has to have very good knowledge of \Class{scrlttr2} to use things like those mentioned above, intelligently. Another point to note is the one should most certainly set the variables for return address (see variable \Variable{backaddress}, \autopageref{desc:scrlttr2.variable.backaddress}) and signature (see variable \Variable{signature}, \autopageref{desc:scrlttr2.variable.signature}) oneself.% % \EndIndex{Variable}{fromname}% \EndIndex{Variable}{fromaddress}% \EndIndex{Option}{fromrule~=\PName{position}}% \begin{Declaration} \KOption{symbolicnames}\PName{simple switch}\\ \KOption{fromphone}\PName{simple switch}\\ \KOption{frommobilephone}\PName{simple switch}\\ \KOption{fromfax}\PName{simple switch}\\ \KOption{fromemail}\PName{simple switch}\\ \KOption{fromurl}\PName{simple switch}\\ \Macro{setkomavar}\PParameter{\Variable{fromphone}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{frommobilephone}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{fromfax}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{fromemail}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{fromurl}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{phoneseparator}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{mobilephoneseparator}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{faxseparator}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{emailseparator}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{urlseparator}}% \OParameter{description}\Parameter{content}% \end{Declaration}% \BeginIndex{Option}{symbolicnames~=\PName{simple switch}}% \BeginIndex{Option}{fromphone~=\PName{simple switch}}% \BeginIndex{Option}{frommobilephone~=\PName{simple switch}}% \BeginIndex{Option}{fromfax~=\PName{simple switch}}% \BeginIndex{Option}{fromemail~=\PName{simple switch}}% \BeginIndex{Option}{fromurl~=\PName{simple switch}}% \BeginIndex{Variable}{fromphone}% \BeginIndex{Variable}{frommobilephone}% \BeginIndex{Variable}{fromfax}% \BeginIndex{Variable}{fromemail}% \BeginIndex{Variable}{fromurl}% \BeginIndex{Variable}{emailseparator}% \BeginIndex{Variable}{faxseparator}% \BeginIndex{Variable}{phoneseparator}% \BeginIndex{Variable}{mobilephoneseparator}% \BeginIndex{Variable}{urlseparator}% Whether or not a telephone number\Index{telephone}\Index{phone}, a mobile\ChangedAt{v3.12}{\Class{scrlttr2}} telephone number\Index{mobile phone}\Index{cell phone}\Index{cellphone}, a fax number\Index{fax}, an e-mail address\Index{e-mail}, or a sender's URL should be set as part of the letterhead may be configured by the options \Option{fromphone}, \Option{fromfax}, \Option{fromemail}, and \Option{fromurl}. Any standard value for simple switches from \autoref{tab:truefalseswitch}, \autopageref{tab:truefalseswitch} may be assigned to these options. Default is \PValue{false} for all of them. The \PName{contents} depends on the corresponding variable. The default of the \PName{description} or title of each variable may be found in \autoref{tab:scrlttr2.fromTerm}. The separators, that will be inserted between \PName{description} and \PName{content}, may be found in \autoref{tab:scrlttr2.fromSeparator}. You may\ChangedAt{v3.12}{\Class{scrlttr2}}\important{\Option{symbolicnames}} change the defaults for the description of the separator variables at once using option \Option{symbolicnames}. The option understands the values for simple switches from \autoref{tab:truefalseswitch}, \autopageref{tab:truefalseswitch}. Switching on the option replaces the descriptions from the language depending terms \Macro{emailname}, \Macro{faxname}, \Macro{mobilephonename}, and \Macro{phonename} into symbols of the package \Package{marvosym}\IndexPackage{marvosym}. Also the colon will be removed from the content of the separator variables. And in this case the description and the content of the URL separator will be empty. Note\textnote{Attention!}, that you have to load package \Package{marvosym} on your own, if you switch on \Option{symbolicnames} first time after \Macro{begin}\PParameter{document}. \begin{table} \centering \caption[{Predefined descriptions of the variables of the letterhead}]{Predefined descriptions of the variables of the letterhead (the description and contents of the separator variables may be found at \autoref{tab:scrlttr2.fromSeparator}} \begin{desctabular}[1.8em] \ventry{fromemail}{\Macro{usekomavar*}\PParameter{emailseparator}% \Macro{usekomavar}\PParameter{emailseparator}}% \ventry{fromfax}{\Macro{usekomavar*}\PParameter{faxseparator}% \Macro{usekomavar}\PParameter{faxseparator}}% \ventry{frommobilephone}{% \ChangedAt{v3.12}{\Class{scrlttr2}}% \Macro{usekomavar*}\PParameter{mobilephoneseparator}% \Macro{usekomavar}\PParameter{mobilephoneseparator}}% \ventry{fromname}{\Macro{headfromname}}% \ventry{fromphone}{\Macro{usekomavar*}\PParameter{phoneseparator}% \Macro{usekomavar}\PParameter{phoneseparator}}% \ventry{fromurl}{\Macro{usekomavar*}\PParameter{urlseparator}% \Macro{usekomavar}\PParameter{urlseparator}}% \end{desctabular} \label{tab:scrlttr2.fromTerm} \end{table} \begin{table}[tp] % \centering \KOMAoptions{captions=topbeside}% \setcapindent{0pt}% % \caption \begin{captionbeside}{Predefined description and content of the separators at the letterhead without option \Option{symbolicnames}} [l] \begin{tabular}[t]{lll} \toprule variable name & description & content \\ \midrule \Variable{emailseparator} & \Macro{emailname} & \texttt{:\~} \\ \Variable{faxseparator} & \Macro{faxname} & \texttt{:\~} \\ \Variable{mobilephoneseparator} & \Macro{mobilephonename} & \Macro{usekomavaer}\PParameter{phoneseparator} \\ \Variable{phoneseparator} & \Macro{phonename} & \texttt{:\~} \\ \Variable{urlseparator} & \Macro{wwwname} & \texttt{:\~} \\ \bottomrule \end{tabular} \end{captionbeside} \label{tab:scrlttr2.fromSeparator} \end{table} \begin{Example} Mr Public from the example letter has telephone and e-mail. He wants to show this also in the letterhead. Furthermore the separation rule should be placed below the letterhead. So he uses the corresponding options and defines the content of the needed variables:% \lstinputcode[xleftmargin=1em]{letter-12.tex}% Nevertheless the result at the left side of \autoref{fig:scrlttr2.letter-12-13} is not disillusioning: the options are ignored. That's the case because the additional variables and options will be used at the extended letterhead only. So option \Option{fromalign} has to be used, like done at the right letter of \autoref{fig:scrlttr2.letter-12-13}. \begin{figure} \centering \frame{\includegraphics[width=.4\textwidth]{letter-12}}\quad \frame{\includegraphics[width=.4\textwidth]{letter-13}} \caption[{Example: letter with extended sender, separation rule, addressee, opening, text, closing, signature, postscript, distribution list, enclosure, and puncher hole mark; standard vs. extended letterhead}] {result of a small letter with sender, separation rule, addressee, opening, text, closing, signature, postscript, distribution list, enclosure and puncher hole mark (the date is a default of DIN-letters): at left one the standard letterhead using \OptionValue{fromalign}{false}, at right one the extended letterhead using \OptionValue{fromalign}{center}} \label{fig:scrlttr2.letter-12-13} \end{figure} \lstinputcode[xleftmargin=1em]{letter-13.tex} An arrangement of alternatives with left aligned using \OptionValue{fromalign}{left} and right aligned sender using \OptionValue{fromalign}{right} may be found in \autoref{fig:scrlttr2.letter-14-15}. \begin{figure} \centering \frame{\includegraphics[width=.4\textwidth]{letter-14}}\quad \frame{\includegraphics[width=.4\textwidth]{letter-15}} \caption[{Example: letter with extended sender, separation rule, addressee, opening, text, closing, signature, postscript, distribution list, enclosure, and puncher hole mark; left vs. right aligned letterhead}] {result of a small letter with sender, separation rule, addressee, opening, text, closing, signature, postscript, distribution list, enclosure and puncher hole mark (the date is a default of DIN-letters): at left one left aligned letterhead using \OptionValue{fromalign}{left}, at right one right aligned letterhead using \OptionValue{fromalign}{right}} \label{fig:scrlttr2.letter-14-15} \end{figure} \end{Example} % \EndIndex{Variable}{urlseparator}% \EndIndex{Variable}{mobilephoneseparator}% \EndIndex{Variable}{phoneseparator}% \EndIndex{Variable}{faxseparator}% \EndIndex{Variable}{emailseparator}% \EndIndex{Variable}{fromurl} \EndIndex{Variable}{fromemail} \EndIndex{Variable}{fromfax} \EndIndex{Variable}{frommobilephone}% \EndIndex{Variable}{fromphone}% \EndIndex{Option}{fromurl~=\PName{simple switch}}% \EndIndex{Option}{fromemail~=\PName{simple switch}}% \EndIndex{Option}{fromfax~=\PName{simple switch}}% \EndIndex{Option}{frommobilephone~=\PName{simple switch}}% \EndIndex{Option}{fromphone~=\PName{simple switch}}% \EndIndex{Option}{symbolicnames~=\PName{simple switch}}% \begin{Declaration} \KOption{fromlogo}\PName{simple switch}\\ \Macro{setkomavar}\PParameter{\Variable{fromlogo}}% \OParameter{description}\Parameter{content} \end{Declaration} \BeginIndex{Option}{fromlogo~=\PName{simple switch}}% \BeginIndex{Variable}{fromlogo}% With option \Option{fromlogo} you may configure whether or not to use a logo\Index{Logo} at the letterhead. The option value may be any \PName{simple switch} from \autoref{tab:truefalseswitch}, \autopageref{tab:truefalseswitch}. Default is \PValue{false}, that means no logo. The logo itself is defined by the \PName{content} of variable \Variable{fromlogo}. The \PName{description} of the logo is empty by default and \KOMAScript{} does not use it anywhere at the predefined note papers (see also \autoref{tab:scrlttr2.fromTerm}).% \begin{Example} Mr Public likes to use a letterhead with logo. He generated a graphics file with the logo and would like to include this using \Macro{includegraphics}. Therefor he uses the additional package \Package{graphics}\IndexPackage{graphics} (see \cite{package:graphics}).% \lstinputcode[xleftmargin=1em]{letter-16}% The result may be seen at the left top position of \autoref{fig:scrlttr2.letter-16-18}. The additional letter prints at this figure shows the result with right aligned or centered sender. \begin{figure} \setcapindent{0pt}% {\hfill \frame{\includegraphics[width=.4\textwidth]{letter-16}}\quad \frame{\includegraphics[width=.4\textwidth]{letter-17}}\par\bigskip} \begin{captionbeside}[{Example: letter with extended sender, logo, separation rule, addressee, opening, text, closing, signature, postscript, distribution list, enclosure, and puncher hole mark; left vs. right aligned vs. centered sender}] {result of a small letter with extended sender, logo, separation rule, addressee, opening, text, closing, signature, postscript, distribution list, enclosure and puncher hole mark (the date is a default of DIN-letters): at top left one left aligned sender using, at right beneath one with centered sender, and at right one right aligned sender}[l] \frame{\includegraphics[width=.4\textwidth]{letter-18}}\quad \end{captionbeside} \label{fig:scrlttr2.letter-16-18} \end{figure} \end{Example}% % \EndIndex{Variable}{fromlogo}% \EndIndex{Option}{fromlogo~=\PName{smart value}}% \begin{Declaration} \Macro{setkomavar}\PParameter{\Variable{firsthead}}% \OParameter{description}\Parameter{content} \end{Declaration} \BeginIndex{Variable}{firsthead}% For many cases, \Class{scrlttr2} with its options and variables offers enough possibilities to create a letterhead. In very rare situations one may wish to have more freedom in terms of layout. In those situations one will have to do without predefined letterheads, which could have been chosen via options. Instead, one needs to create one's own letterhead from scratch. To do so, one has to define the preferred construction as content of variable \Variable{firsthead}. Within \Macro{firsthead}, and with the help of the \Macro{parbox} command (see \cite{latex:usrguide}), one can set several boxes side by side, or one underneath the other. An advanced user will thus be able to create a letterhead on his own. Of course the construct may and should use other variables with the help of \Macro{usekomavar}. \KOMAScript{} does not use the \PName{description} of variable \Variable{firsthead}. \iffree{}{A detailed example for the definition of a letterhead will be shown in \autoref{cha:modernletters}.} The\textnote{Attention!} command \Macro{firsthead}\IndexCmd[indexmain]{firsthead} exists only for reason of compatibility to former \Class{scrlttr2} versions. However it is deprecated and you should not use it anymore.% % \EndIndex{Variable}{firsthead}% % \EndIndex{}{letter>head}% \EndIndex{}{letterhead}% \begin{Declaration} \KOption{addrfield}\PName{mode}\\ \KOption{backaddress}\PName{value}\\ \KOption{priority}\PName{priority}\\ \Macro{setkomavar}\PParameter{\Variable{toname}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{toaddress}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{backaddress}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{backaddressseparator}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{specialmail}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{fromzipcode}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{zipcodeseparator}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{place}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{PPcode}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{PPdatamatrix}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{addresseeimage}}% \OParameter{description}\Parameter{content} \end{Declaration}% \BeginIndex{}{Anschrift}% \BeginIndex{Option}{addrfield~=\PName{mode}}% \BeginIndex{Variable}{toname}% \BeginIndex{Variable}{toaddress}% \BeginIndex{Option}{backaddress~=\PName{value}}% \BeginIndex{Variable}{backaddress}% \BeginIndex{Variable}{backaddressseparator}% \BeginIndex{Option}{priority~=\PName{priority}}% \BeginIndex{Variable}{specialmail}% \BeginIndex{Variable}{fromzipcode}% \BeginIndex{Variable}{zipcodeseparator}% \BeginIndex{Variable}{place}% \BeginIndex{Variable}{PPcode}% \BeginIndex{Variable}{PPdatamatrix}% \BeginIndex{Variable}{addresseeimage}% \BeginIndex{FontElement}{addressee}% \BeginIndex{FontElement}{toname}% \BeginIndex{FontElement}{toaddress}% Option \Option{addrfield} defines whether or not to set an address field. Default is to use an address field. This option can take the mode values from \autoref{tab:scrlttr2.addrfield}\ChangedAt{v3.03}{\Class{scrlttr2}}. Default is \PValue{true}. With values \PValue{true}, \PValue{PP}, and \PValue{backgroundimage} name and address of the addressee will be defined by the mandatory argument of the \Environment{letter} environment (see \autoref{sec:scrlttr2.document}, \autopageref{desc:scrlttr2.env.letter}). These elements will additionally be copied into the variables \Variable{toname} and \Variable{toaddress}. The predefined font styles may be changed\ChangedAt{v2.97c}{\Class{scrlttr2}} by execution of command \Macro{setkomafont} or \Macro{addtokomafont} (siehe \autoref{sec:scrlttr2.textmarkup}, \autopageref{desc:scrlttr2.cmd.setkomafont}). Thereby three elements exist. First of all element \FontElement{addressee}\important{\FontElement{addressee}}, that is responsible for the addressee overall. The additional elements \FontElement{toname}\important{\FontElement{toname}} and \FontElement{toaddress}\important{\FontElement{toaddress}} are responsible only either for the name or the address of the addressee. They may be used to define modifications from the \FontElement{addressee} configuration.% \EndIndex{FontElement}{toaddress}% \EndIndex{FontElement}{toname}% \EndIndex{FontElement}{addressee}% \begin{table} \caption[{available values for option \Option{addrfield} using \Class{scrlttr2}}]{available values for option \Option{addrfield} to change the addressee mode of \Class{scrlttr2}}% \label{tab:scrlttr2.addrfield}% \begin{desctabular} \entry{\PValue{true}, \PValue{on}, \PValue{yes}}{% Prints an address field including a return address and a mode of dispatch or priority.}% \entry{\PValue{false}, \PValue{off}, \PValue{no}}{% Omits the address field.}% \entry{\PValue{PP}, \PValue{pp}, \PValue{PPexplicite}, \PValue{PPExplicite}, \PValue{ppexplicite}, \PValue{ppExplicite}}{% Prints an address field with Port-Pay\'e head, defined by the variables \Variable{fromzipcode}, \Variable{place}, and \Variable{PPcode} and when indicated with priority and data array defined by \Variable{PPdatamatrix} but without return address and mode of dispatch.}% \entry{\PValue{backgroundimage}, \PValue{PPbackgroundimage}, \PValue{PPBackgroundImage}, \PValue{PPBackGroundImage}, \PValue{ppbackgroundimage}, \PValue{ppBackgroundImage}, \PValue{ppBackGroundImage}}{% Prints an address field with Port-Pay\'e head, in variable \Variable{addresseimage} defined background graphics, but without return address or mode of dispatch.}% \entry{\PValue{image}, \PValue{Image}, \PValue{PPimage}, \PValue{PPImage}, \PValue{ppimage}, \PValue{ppImage}}{% Prints variable \Variable{addresseeimage} as addressee with Port-Pay\'e, but ignores addressee information and definitions for return address, mode of dispatch or priority.}% \end{desctabular} \end{table}% With the default \OptionValue{addrfield}{true} an additional return address will be printed. Option \Option{backaddress} defines whether a return address for window envelopes will be set. This option\important{\OptionValue{backaddress}{false}} can take the standard values for simple switches, as listed in \autoref{tab:truefalseswitch}, \autopageref{tab:truefalseswitch}. These values do not change style of the return address. On the other hand, additionally\ChangedAt{v2.96}{\Class{scrlttr2}} to switching on the return address, the style of the return address may be selected. Option value \PValue{underlined} selects an underlined return address. In opposite to this value \PValue{plain}\important{\OptionValue{backaddress}{plain}} selects a style without underline. Default is \PValue{underlined} and therefore printing an underlined return address. \BeginIndex{FontElement}{backaddress}% The return address itself is defined by the \PName{content} of variable \Variable{backaddress}. Default is a combination of variable \Variable{toname} and \Variable{toaddress} with redefinition of the double backslash to set the \PName{content} of variable \Variable{backaddressseparator}. The predefined separator \PName{content} is a comma followed by a non-breakable white space. The \PName{description} of variable \Variable{backaddress} is not used by \KOMAScript. The font style of the return address is configurable via element \FontElement{backaddress}\important{\FontElement{backaddress}}. Default for this is \Macro{sffamily} (see \autoref{tab:scrlttr2.AddresseeElements}). Before execution of the element's font style \KOMAScript{} switches to \Macro{scriptsize}.% \EndIndex{FontElement}{backaddress}% % \EndIndex{Variable}{backaddressseparator}% \EndIndex{Variable}{backaddress}% \EndIndex{Option}{backaddress~=\PName{value}}% \EndIndex{Variable}{toaddress}% \EndIndex{Variable}{toname}% \begin{table} % \centering \KOMAoptions{captions=topbeside}% \setcapindent{0pt}% % \caption \begin{captionbeside}{% Predefined font style for the elements of the address field.% }% [l] \begin{tabular}[t]{ll} \toprule element & font style \\ \midrule \FontElement{addressee}\IndexFontElement{addressee} & \\ \FontElement{backaddress}\IndexFontElement{backaddress} & \Macro{sffamily}% \\ \FontElement{PPdata}\IndexFontElement{PPdata} & \Macro{sffamily}% \\ \FontElement{PPlogo}\IndexFontElement{PPlogo} & \Macro{sffamily}\Macro{bfseries}% \\ \FontElement{priority}\IndexFontElement{priority} & \Macro{fontsize}\PParameter{10pt}\PParameter{10pt}% \Macro{sffamily}\Macro{bfseries}% \\ \FontElement{prioritykey}\IndexFontElement{prioritykey} & \Macro{fontsize}\PParameter{24.88pt}\PParameter{24.88pt}% \Macro{selectfont}% \\ \FontElement{specialmail}\IndexFontElement{specialmail} & \\ \FontElement{toaddress}\IndexFontElement{toaddress} & \\ \FontElement{toname}\IndexFontElement{toname} & \\ \bottomrule \end{tabular} \end{captionbeside} \label{tab:scrlttr2.AddresseeElements}% \end{table} \BeginIndex{FontElement}{specialmail}% At the default \OptionValue{addrfield}{true} an optional dispatch type\Index{mode of dispatch}\Index{dispatch type} can be output within the address field between the return address and the addressee address, This will be done only if variable \Variable{specialmail} is not empty and \OptionValue{priority}{manual}\ChangedAt{v3.03}{\Class{scrlttr2}} has been selected, which is also the default. Class \Class{scrlttr2} itself does not use the \PName{description} of variable \Variable{specialmail}. The alignment is defined by the pseudo-lengths PLength{specialmailindent} and \PLength{specialmailrightindent} (siehe \autopageref{desc:scrlttr2-experts.plength.specialmailindent}). The predefined font style of element\ChangedAt{v2.97c}{\Class{scrlttr2}} \FontElement{specialmail}\important{\FontElement{specialmail}}, that has been listed in \autoref{tab:scrlttr2.AddresseeElements}, may be changed using commands \Macro{setkomafont} and \Macro{addtokomafont} (see \autoref{sec:scrlttr2.textmarkup}, \autopageref{desc:scrlttr2.cmd.setkomafont}).% \EndIndex{FontElement}{specialmail}% \BeginIndex{FontElement}{priority}% \BeginIndex{FontElement}{prioritykey}% On\ChangedAt{v3.03}{\Class{scrlttr2}}\important[i]{\OptionValue{priority}{A}\\ \OptionValue{priority}{B}} the other hand, using an international priority with \OptionValue{priority}{A} or \OptionValue{priority}{B} (see \autoref{tab:scrlttr2.priority}) together with \OptionValue{addrfield}{true} will print the priority as mode of dispatch. Using it together with \OptionValue{addrfield}{PP}\important{\OptionValue{addrfield}{PP}} will print the priority at the corresponding position in the Port-Pay\'e head. Thereby the element \FontElement{priority} defines the basic font style and \FontElement{prioritykey} the modification of the basic font style for the priority key, ``A'' or ``B''. The default font styles are listed in \autoref{tab:scrlttr2.AddresseeElements} and may be changed using commands \Macro{setkomafont} und \Macro{addtokomafont} (siehe \autoref{sec:scrlttr2.textmarkup}, \autopageref{desc:scrlttr2.cmd.setkomafont}).% \EndIndex{FontElement}{prioritykey}% \EndIndex{FontElement}{priority}% \EndIndex{Variable}{specialmail}% \begin{table} \caption[{available values for option \Option{priority} in \Class{scrlttr2}}]{available values for option \Option{priority} to select the international priority at the address field of\Class{scrlttr2}} \label{tab:scrlttr2.priority} \begin{desctabular} \entry{\PValue{false}, \PValue{off}, \PValue{no}, \PValue{manual}}{% Priority will not be printed.}% \entry{\PValue{B}, \PValue{b}, \PValue{economy}, \PValue{Economy}, \PValue{ECONOMY}, \PValue{B-ECONOMY}, \PValue{B-Economy}, \PValue{b-economy}}{% Use international priority B-Economy. With \OptionValue{addrfield}{true} this will be printed instead of the mode of dispatch.}% \entry{\PValue{A}, \PValue{a}, \PValue{priority}, \PValue{Priority}, \PValue{PRIORITY}, \PValue{A-PRIORITY}, \PValue{A-Priority}, \PValue{a-priority}}{% Use international priority A-Priority. With \OptionValue{addrfield}{true} this will be printed instead of the mode of dispatch.}% \end{desctabular} \end{table} With\ChangedAt{v3.03}{\Class{scrlttr2}}\important{\OptionValue{addrfield}{PP}} \OptionValue{addrfield}{PP} also the zip-code of variable \Variable{fromzipcode} and the place from \PName{content} of variable \Variable{place} will be set in the Port-Pay\'e head. Thereby the \PName{content} of variable \Variable{fromzipcode} will be preceded by the \PName{description} of variable \Variable{fromzipcode} and the \PName{content} of variable \Variable{zipcodeseparator}. The predefined \PName{description} depends on the used \File{lco}-file (see \autoref{sec:scrlttr2.lcoFile} from \autopageref{sec:scrlttr2.lcoFile} onward). On the other hand the default of the \PName{content} of variable \Variable{zipcodeseparator} is a small distance followed by an endash followed by one more small distance (\Macro{,}\texttt{-{}-}\Macro{,}). Beyond\ChangedAt{v3.03}{\Class{scrlttr2}} that, with \OptionValue{addrfield}{PP}\important{\OptionValue{addrfield}{PP}} and sender's identification code will be used at the Port-Pay\'e head. This is the \PName{content} of variable \Variable{PPcode}. Right beside the address of the addressee an additional data array may be printed. The \PName{content} of variable \Variable{PPdatamatrix} will be used for this. \BeginIndex{FontElement}{PPdata}% Zip-code\ChangedAt{v3.03}{\Class{scrlttr2}}, place and code will be printed with default font size 8\Unit{pt}. Thereby the font style of element \FontElement{PPdata}\important{\FontElement{PPdata}} will be used. The default of the element is listed in \autoref{tab:scrlttr2.AddresseeElements} and may be changed using commands \Macro{setkomafont} and \Macro{addtokomafont} (see \autoref{sec:scrlttr2.textmarkup}, \autopageref{desc:scrlttr2.cmd.setkomafont}).% \EndIndex{FontElement}{PPdata}% % \EndIndex{Variable}{PPcode}% \EndIndex{Variable}{place}% \EndIndex{Variable}{zipcodeseparator}% \EndIndex{Variable}{fromzipcode}% With\important[i]{\begin{tabular}[t]{@{}l@{}} \KOption{addrfield}\\\quad\PValue{backgroundimage}\end{tabular}\strut\\ \strut\OptionValue{addrfield}{image}} options \OptionValue{addrfield}{backgroundimage}\ChangedAt{v3.03}{\Class{scrlttr2}} or \OptionValue{addrfield}{image} a picture will be print inside the address field. The \PName{content} of variable \Variable{addresseeimage} will be used for this. \KOMAScript{} does not use the \PName{description} of that variable. Nothing else but the picture will be printed with option \OptionValue{addrfield}{image}. But with option \OptionValue{addrfield}{backgroundimage} the addressee's name and address from the mandatory argument of the \Environment{letter} environment will be output. The alignment of the Port-Pay\'e head as long as the alignment of the Port-Pay\'e address is defined by pseudo-length \PLength{toaddrindent} (see \autopageref{desc:scrlttr2-experts.plength.toaddrindent}) as well as \PLength{PPheadwidth} and \PLength{PPheadheight} (siehe \autopageref{desc:scrlttr2-experts.plength.PPheadheight}). The alignment of the data array is defined by pseudo-length \PLength{PPdatamatrixvskip} (see \autopageref{desc:scrlttr2-experts.plength.PPdatamatrixvskip}). Please note\textnote{Attention!} that \KOMAScript{} itself cannot set any external graphics or pictures. So, if you want to put external picture files into variables like \Variable{addresseeimage} or \Variable{PPdatamatrix}, you have to use an additional graphics package like \Package{graphics}\IndexPackage{graphics} or \Package{graphicx}\IndexPackage{graphicx} to use, i.\,e., the command \Macro{includegraphics} at the \PName{content} of the variables.% % \EndIndex{Variable}{addresseeimage}% \EndIndex{Variable}{PPdatamatrix}% % \EndIndex{Option}{addrfield~=\PName{mode}}% \EndIndex{Option}{priority~=\PName{priority}}% % \EndIndex{}{Anschrift} \begin{Declaration} \KOption{locfield}\PName{selection} \end{Declaration} \BeginIndex{}{sender>additional information}% \BeginIndex{Option}{locfield~=\PName{selection}}% \Class{scrlttr2} places a field with additional sender attributes next to the address field. This can be used, for example, for bank account or similar additional information. Depending\important[i]{\OptionValue{fromalign}{center}\\ \begin{tabular}[t]{@{}l@{}} \KOption{fromalign}\\\quad\PValue{locationleft}\end{tabular}\\ \begin{tabular}[t]{@{}l@{}} \KOption{fromalign}\\\quad\PValue{locationright}\end{tabular}} on the \Option{fromalign} option, it will also be used for the sender logo. The width of this field may be defined within an \File{lco} file (see \autoref{sec:scrlttr2.lcoFile}). If the width is set to 0 in that file, then the \Option{locfield} option can toggle between two presets for the field width. See the explanation on the \Variable{locwidth} pseudo length in \autoref{sec:scrlttr2-experts.locationField}, \autopageref{desc:scrlttr2-experts.plength.locwidth}. Possible values for this option are shown in \autoref{tab:scrlttr2.locfield}. Default is \PValue{narrow}.% % \begin{table} % \centering \KOMAoptions{captions=topbeside}% \setcapindent{0pt}% % \caption \begin{captionbeside} [{Possible values of option \Option{locfield} with \Class{scrlttr2}}]{Possible values of option \Option{locfield} for setting the width of the field with additional sender attributes with \Class{scrlttr2}% \label{tab:scrlttr2.locfield}}% [l] \begin{minipage}[t]{.45\linewidth} \begin{desctabular}[t] \pventry{narrow}{narrow sender supplement field}% \pventry{wide}{wide sender supplement field}% \end{desctabular} \end{minipage} \end{captionbeside} \end{table} \begin{Declaration} \Macro{setkomavar}\PParameter{\Variable{location}}% \OParameter{description}\Parameter{content} \end{Declaration} \BeginIndex{Variable}{location}% The contents of the sender's extension field is determined by the variable \Variable{location}. To set this variable's \PName{content}, it is permitted to use formatting commands like \Macro{raggedright}. \KOMAScript{} does not use the \PName{description} of the variable. \begin{Example} Mr Public likes to show some additional information about his membership. Therefor he uses the \Variable{location} variable:% \lstinputcode[xleftmargin=1em]{letter-19.tex}% This will define the field beside the addressee's address like shown in \autoref{fig:scrlttr2.letter-19}. \begin{figure} \setcapindent{0pt}% \begin{captionbeside}[{Example: letter with extended sender, logo, addressee, additional sender information, opening, text, closing, signature, postscript, distribution list, enclosure, and puncher hole mark}] {result of a small letter with extended sender, logo, addressee, additional sender information, opening, text, closing, signature, postscript, distribution list, enclosure and puncher hole mark (the date is a default of DIN-letters)}[l] \frame{\includegraphics[width=.4\textwidth]{letter-19}} \end{captionbeside} \label{fig:scrlttr2.letter-19} \end{figure} \end{Example} % \EndIndex{Variable}{location}% % \EndIndex{Option}{locfield~=\PName{selection}}% % \EndIndex{}{sender>additional information}% \begin{Declaration} \KOption{numericaldate}\PName{simple switch} \end{Declaration} \BeginIndex{Option}{numericaldate~=\PName{simple switch}}% This option toggles between the standard, language-dependent date\Index{date}\Index{reference line} presentation, and a short, numerical one. {\KOMAScript} does not provide the standard presentation. It should be defined by packages such as \Package{ngerman}\IndexPackage{ngerman}, \Package{babel}\IndexPackage{babel}, or \Package{isodate}\IndexPackage{isodate}. The\important{\OptionValue{numericaldate}{true}} short, numerical presentation, on the other hand, is produced by \Class{scrlttr2} itself. This option can take the standard values for simple switches, as listed in \autoref{tab:truefalseswitch}, \autopageref{tab:truefalseswitch}. Default is \PValue{false}, which results in standard date presentation. \begin{Declaration} \Macro{setkomavar}\PParameter{\Variable{date}}% \OParameter{description}\Parameter{content} \end{Declaration} \BeginIndex{Variable}{date}% The date in the selected presentation will become the \PName{content} of variable \Variable{date}. The selection of option \Option{numericaldate} does not influence the date any longer, if the \PName{content} of this variable will be changed by the user. Normally the date will be part of the reference line. If all other elements of the reference line will be empty and therefore unused a date line instead of a reference line will be printed. See the description of variable \Variable{place} on \autopageref{desc:scrlttr2.variable.placeseparator} for more information about the date line. You should note, that you can change the automatic printing of the date using option \Option{refline}, that will be described next. % \EndIndex{Variable}{date}% \EndIndex{Option}{numericaldate~=\PName{switch}}% \begin{Declaration} \KOption{refline}\PName{selection} \end{Declaration} \BeginIndex{}{reference line}% \index{business line|see{reference line}}% \BeginIndex{Option}{refline~=\PName{selection}}% Especially in business letters a line with information like identification code\Index{identification>code}, direct dial, customer's number, invoice's number, or references to previous letters may be found usually. This line will be named \emph{reference line}\textnote{reference line} in this manual. With the \Class{scrlttr2} class, the header, footer, address, and sender attributes may extend beyond the normal type area to the left and to the right. Option \OptionValue{refline}{wide} defines that this should also apply to the reference fields line. Normally, the reference fields line contains at least the date, but it can hold additional data. Possible values for this option are shown in \autoref{tab:scrlttr2.refline}. Default is \PValue{narrow} and \PValue{dateright}\ChangedAt{v3.09}{\Class{scrlttr2}}.% % \begin{table} \caption[{Possible value of option \Option{refline} with \Class{scrlttr2}}]{Possible value of option \Option{refline} for setting the width of the reference fields line with \Class{scrlttr2}} \label{tab:scrlttr2.refline} \begin{desctabular} \pventry{dateleft}{\ChangedAt{v3.09}{\Class{scrlttr2}}% The date will be placed leftmost at the reference line.}% \pventry{dateright}{\ChangedAt{v3.09}{\Class{scrlttr2}}% The date will be placed rightmost at the reference line.}% \pventry{narrow}{The reference line will be restricted to type area.}% \pventry{nodate}{\ChangedAt{v3.09}{\Class{scrlttr2}}% The date is not placed automatically into the reference line.}% \pventry{wide}{The with of the reference line corresponds to address and sender's additional information.}% \end{desctabular} \end{table} \begin{Declaration} \Macro{setkomavar}\PParameter{\Variable{yourref}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{yourmail}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{myref}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{customer}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{invoice}}% \OParameter{description}\Parameter{content}% \end{Declaration} \BeginIndex{Variable}{yourref}% \BeginIndex{Variable}{yourmail}% \BeginIndex{Variable}{myref}% \BeginIndex{Variable}{customer}% \BeginIndex{Variable}{invoice}% These five variables represent typical fields of the reference line. Their meanings are given in \autoref{tab:scrlttr2.variables} on \autopageref{tab:scrlttr2.variables}. Each variable has also a predefined \PName{description}, shown in \autoref{tab:scrlttr2.reflineTerm}. Additional information about adding other variables to the reference line may be found in \autoref{sec:scrlttr2-experts.variables} from \autopageref{desc:scrlttr2-experts.cmd.newkomavar} onward.% % \begin{table} % \centering \KOMAoptions{captions=topbeside}% \setcapindent{0pt}% % \caption \begin{captionbeside}[{predefined descriptions of variables of the reference line}]{predefined descriptions of typical variables of the reference fields line using macros depending on the current language}% [l] \begin{tabular}[t]{lll} \toprule variable name & description & e.\,g., in english \\ \midrule \Variable{yourref} & \Macro{yourrefname} & Your reference \\ \Variable{yourmail} & \Macro{yourmailname} & Your letter from \\ \Variable{myref} & \Macro{myrefname} & Our reference \\ \Variable{customer} & \Macro{customername} & Customer No.: \\ \Variable{invoice} & \Macro{invoicename} & Invoice No.: \\ \Variable{date} & \Macro{datename} & date \\ \bottomrule \end{tabular} \end{captionbeside} \label{tab:scrlttr2.reflineTerm} \end{table} \BeginIndex{FontElement}{refname}% \BeginIndex{FontElement}{refvalue}% Font style and color\ChangedAt{v2.97c}{\Class{scrlttr2}} of the \PName{description} and \PName{content} of the fields of the reference line may be changed with elements \FontElement{refname}% \important[i]{\FontElement{refname}\\\FontElement{refvalue}} and \FontElement{refvalue}. Therefor the commands \Macro{setkomafont} and \Macro{addtokomafont} (see \autoref{sec:scrlttr2.textmarkup}, \autopageref{desc:scrlttr2.cmd.setkomafont}) should be used. The default configuration of both elements is listed in \autoref{tab:scrlttr2.refnamerefvalue}.% \begin{table}[tp] % \centering \KOMAoptions{captions=topbeside}% \setcapindent{0pt}% % \caption \begin{captionbeside} [{font style default of elements of the reference line}]{default font style configuration of the elements of the reference line% \label{tab:scrlttr2.refnamerefvalue}} [l] \begin{tabular}[t]{ll} \toprule element & default configuration \\ \midrule \FontElement{refname} & \Macro{sffamily}\Macro{scriptsize} \\ \FontElement{refvalue} & \\ \bottomrule \end{tabular} \end{captionbeside} \end{table}% % \EndIndex{FontElement}{refvalue}% \EndIndex{FontElement}{refname}% \begin{Declaration} \Macro{setkomavar}\PParameter{\Variable{place}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{placeseparator}}% \OParameter{description}\Parameter{content} \end{Declaration}% \BeginIndex{Variable}{place}% \BeginIndex{Variable}{placeseparator}% If all variables of the reference line are empty, the line will be omitted. In this case, the \PName{content} of \Variable{place} and \Variable{placeseparator} will be set, followed by the \PName{content} of \Variable{date}. The predefined \PName{content} of the \Variable{placeseparator} is a comma followed by a non-breaking space. If the variable \Variable{place} has no \PName{content} value then the hyphen remains unset also. The predefined \PName{content} of \Variable{date} is \Macro{today}\IndexCmd{today} and depends on the setting of the option \Option{numericaldate} (see \autopageref{desc:scrlttr2.option.numericaldate}). Since version~3.09\ChangedAt{v3.09}{\Class{scrlttr2}} place and date the alignment of place and date is given by option \Option{refline}. The available alignment values for this option are listed in \autoref{tab:scrlttr2.refline}. \BeginIndex{FontElement}{placeanddate}% The\ChangedAt{v3.12}{\Class{scrlttr2}} font setting of place and date in the date line are given by font element\FontElement{placeanddate}\important[i]{\FontElement{placeanddate}} instead of element \FontElement{refvalue}, which would be used for general reference lines. You can change the empty default of the font element using commands \Macro{setkomafont} and \Macro{addtokomafont} (see \autoref{sec:scrlttr2.textmarkup}, \autopageref{desc:scrlttr2.cmd.setkomafont}).% \EndIndex{FontElement}{placeanddate}% \begin{Example} Now Mr Public also sets the place:% \lstinputcode[xleftmargin=1em]{letter-20.tex}% In this case \autoref{fig:scrlttr2.letter-20} shows the place and the automatic separator in front of the date. The date has been defined explicitly to make the printed date independent from the date of the \LaTeX{} run. \begin{figure} \setcapindent{0pt}% \begin{captionbeside}[{Example: letter with extended sender, logo, addressee, additional sender information, place, date, opening, text, closing, signature, postscript, distribution list, enclosure, and puncher hole mark}] {result of a small letter with extended sender, logo, addressee, additional sender information, place, date, opening, text, closing, signature, postscript, distribution list, enclosure and puncher hole mark}[l] \frame{\includegraphics[width=.4\textwidth]{letter-20}} \end{captionbeside} \label{fig:scrlttr2.letter-20} \end{figure} \end{Example} % \EndIndex{Variable}{place}% \EndIndex{Variable}{placeseparator}% % \EndIndex{Variable}{invoice}% \EndIndex{Variable}{customer}% \EndIndex{Variable}{myref}% \EndIndex{Variable}{yourmail}% \EndIndex{Variable}{yourref}% % \EndIndex{Option}{refline~=\PName{selection}}% \EndIndex{}{reference line}% \begin{Declaration} \Macro{setkomavar}\PParameter{\Variable{title}}% \OParameter{description}\Parameter{content} \end{Declaration} \BeginIndex{}{title}% \BeginIndex{Variable}{title}% \BeginIndex{FontElement}{title}% With \Class{scrlttr2} a letter can carry an additional title. The title is centered and set with font size \Macro{LARGE} directly after and beneath the reference fields line. The predefined font setup for the element \FontElement{title}\important{\FontElement{title}} can be changed with commands \Macro{setkomafont} und \Macro{addtokomafont} (see \autoref{sec:scrlttr2.textmarkup}, \autopageref{desc:scrlttr2.cmd.setkomafont}). Font size declarations are allowed. Font size \Macro{Large} is not part of the predefined default \Macro{normalcolor}\Macro{sffamily}\Macro{bfseries} but nevertheless will be used before the font style of the element. \begin{Example} Assume that you are to write a reminder. Thus you put as title: \begin{lstlisting} \setkomavar{title}{Reminder} \end{lstlisting} This way the addressee will recognize a reminder as such. \end{Example} Like shown in the example, the \PName{content} of the variable defines the title. \KOMAScript{} will not use the \PName{description}.% % \EndIndex{FontElement}{title}% \EndIndex{Variable}{title}% \EndIndex{}{title}% \begin{Declaration} \KOption{subject}\PName{selection}\\ \Macro{setkomavar}\PParameter{\Variable{subject}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{subjectseparator}}% \OParameter{description}\Parameter{content} \end{Declaration} \BeginIndex{}{subject}% \BeginIndex{Option}{subject~=\PName{selection}}% \BeginIndex{Variable}{subject}% \BeginIndex{Variable}{subjectseparator}% In case a subject should be set, the \PName{content} of the variable \Variable{subject} need to be defined. First of all with option \OptionValue{subject}{true}\important{\OptionValue{subject}{titled}} the usage of the \PName{description} before the output of the subject may be configured. See \autoref{tab:scrlttr2.subjectTerm} for the predefined \PName{description}. In case of using the \PName{description} the \PName{content} of variable \Variable{subjectseparator}\Index{separator} will be set between the \PName{description} and \PName{content} of the \Variable{subject}. The predefined \PName{content} of \PName{subjectseparator} is a colon followed by a white space. \begin{table} % \centering \KOMAoptions{captions=topbeside}% \setcapindent{0pt}% % \caption \begin{captionbeside}{predefined descriptions of subject-related variables} [l] \begin{tabular}[t]{lll} \toprule variable name & description \\ \midrule \Variable{subject} & \Macro{usekomavar*}\PParameter{subjectseparator}% \texttt{\%} \\ & \texttt{\quad}% \Macro{usekomavar}\PParameter{subjectseparator} \\ \Variable{subjectseparator} & \Macro{subjectname} \\ \bottomrule \end{tabular} \end{captionbeside} \label{tab:scrlttr2.subjectTerm} \end{table} On the other hand, \OptionValue{subject}{afteropening}% \important{\OptionValue{subject}{afteropening}} may be used to place the subject below instead of before the letter opening. Furthermore, the formatting\important[i]{\OptionValue{subject}{underlined}\\ \OptionValue{subject}{centered}\\ \OptionValue{subject}{right}} of the subject may be changed using either \OptionValue{subject}{underlined}, \OptionValue{subject}{centered}, or \OptionValue{subject}{right}\ChangedAt{v2.97c}{\Class{scrlttr2}}. All available values are listed in \autoref{tab:scrlttr2.subject}. Please note\textnote{Attention!}, that with option \OptionValue{subject}{underlined} the while subject must fit at one line! Defaults are \OptionValue{subject}{left}, \OptionValue{subject}{beforeopening}, and \OptionValue{subject}{untitled}.% % \begin{table} % \centering \KOMAoptions{captions=topbeside}% \setcapindent{0pt}% % \caption \begin{captionbeside} [{available values of option \Option{subject} with \Class{scrlttr2}}] {available values of option \Option{subject} for the position and formatting of the subject with \Class{scrlttr2}\label{tab:scrlttr2.subject}}% [l] \begin{minipage}[t]{.6\linewidth} \begin{desctabular}[t] \pventry{afteropening}{subject after opening}% \pventry{beforeopening}{subject before opening}% \pventry{centered}{subject centered}% \pventry{left}{subject left-justified}% \pventry{right}{subject right-justified}% \pventry{titled}{add title/description to subject}% \pventry{underlined}{set subject underlined (see note in text please)}% \pventry{untitled}{do not add title/description to subject}% \end{desctabular} \end{minipage} \end{captionbeside} \end{table} \BeginIndex{FontElement}{subject}% The subject line is set in a separate font\Index{font>style}. To change this use the commands \Macro{setkomafont} and \Macro{addtokomafont} (siehe \autoref{sec:scrlttr2.textmarkup}, \autopageref{desc:scrlttr2.cmd.setkomafont}). or the element \FontElement{subject}\important{\FontElement{subject}} the predetermined font in \Class{scrlttr2} is \Macro{normalcolor}\Macro{bfseries}.% \EndIndex{FontElement}{subject}% \begin{Example} Now, Mr Public sets a subject. He's a more traditional person, so he likes to have a kind of heading to the subject and therefor sets the corresponding option:% \lstinputcode[xleftmargin=1em]{letter-21.tex}% The result is shown by \autoref{fig:scrlttr2.letter-21}. \begin{figure} \setcapindent{0pt}% \begin{captionbeside}[{Example: letter with extended sender, logo, addressee, additional sender information, place, date, subject, opening, text, closing, signature, postscript, distribution list, enclosure, and puncher hole mark}] {result of a small letter with extended sender, logo, addressee, additional sender information, place, date, subject opening, text, closing, signature, postscript, distribution list, enclosure and puncher hole mark}[l] \frame{\includegraphics[width=.4\textwidth]{letter-21}} \end{captionbeside} \label{fig:scrlttr2.letter-21} \end{figure} \end{Example} % \EndIndex{Variable}{subjectseparator}% \EndIndex{Variable}{subject}% \EndIndex{Option}{subject~=\PName{selection}}% \EndIndex{}{subject}% \begin{Declaration} \KOption{firstfoot}\PName{simple switch} \end{Declaration} \BeginIndex{}{letter>foot}% \BeginIndex{}{letterfoot}% \BeginIndex{Option}{firstfoot~=\PName{simple switch}}% This\ChangedAt{v2.97e}{\Class{scrlttr2}} option determines whether the letterfoot is set or not. Switching off the letterfoot, e.\,g., using \OptionValue{firstfoot}{false}\important{\OptionValue{firstfoot}{false}}, has an effect when the option \Option{enlargefirstpage} (see \autopageref{desc:scrlttr2.option.enlargefirstpage}) is used concurrently. In this case the text area of the page will be enlarged down to the bottom. Then the normal distance between typing area and the letter foot will become the only distance remaining between the end of the typing area and the end of the page. The option understands the standard values for simple switches, as given in \autoref{tab:truefalseswitch}, \autopageref{tab:truefalseswitch}. Default is the setting of the letter foot. \EndIndex{Option}{firstfoot~=\PName{simple switch}}% \begin{Declaration} \Macro{setkomavar}\PParameter{\Variable{firstfoot}}% \OParameter{description}\Parameter{content} \end{Declaration}% \BeginIndex{Variable}{firstfoot}% The first page's footer is preset to empty. However\ChangedAt{v3.08}{\Class{scrlttr2}}, a new construction may be made at the \PName{content} of variable \Variable{firstfoot}. \KOMAScript{} does not use the \PName{description} of the variable. For more information see the example following the next description. Only for compatibility reason the deprecated command \Macro{firstfoot}\IndexCmd[indexmain]{firstfoot} of \Class{scrlttr2} before release~3.08 still exists. Nevertheless it should not be used any longer. \begin{Declaration} \Macro{setkomavar}\PParameter{\Variable{frombank}}% \OParameter{description}\Parameter{content} \end{Declaration}% \BeginIndex{Variable}{frombank}% This variable at the moment takes on a special meaning: it is not used internally at this point, and the user can make use of it to set, for example, his bank account\Index{bank account} within the sender's additional information (see variable \Variable{location}, \autopageref{desc:scrlttr2.variable.location}) or the footer.% % \begin{Example} In the first page's footer, you may want to set the \PName{content} of the variable \Variable{frombank} (the bank account). The double backslash should be exchanged with a comma at the same time: \begin{lstcode} \setkomavar{firstfoot}{% \parbox[b]{\linewidth}{% \centering\def\\{, }\usekomavar{frombank}% }% } \end{lstcode} For the hyphen you might define a variable of your own if you like. This is left as an exercise for the reader. Nowadays it has become very common to create a proper footer in order to obtain some balance with respect to the letterhead. This can be done as follows: \begin{lstcode} \setkomavar{firstfoot}{% \parbox[t]{\textwidth}{\footnotesize \begin{tabular}[t]{l@{}}% \multicolumn{1}{@{}l@{}}{Partners:}\\ Jim Smith\\ Russ Mayer \end{tabular}% \hfill \begin{tabular}[t]{l@{}}% \multicolumn{1}{@{}l@{}}{Manager:}\\ Jane Fonda\\[1ex] \multicolumn{1}{@{}l@{}}{Court Of Jurisdiction:}\\ Great Plains \end{tabular}% \ifkomavarempty{frombank}{}{% \hfill \begin{tabular}[t]{l@{}}% \multicolumn{1}{@{}l@{}}{\usekomavar*{frombank}:}\\ \usekomavar{frombank} \end{tabular}% }% }% } \end{lstcode} This example, by the way, came from Torsten Kr\"uger. With \begin{lstcode} \setkomavar{frombank}{Account No. 12\,345\,678\\ at Citibank\\ bank code no: 876\,543\,21} \end{lstcode} the bank account can be set accordingly. % If the footer will have such a large height then it might happen that you % have to shift its position. You can do this with the pseudo-length % \PLength{firstfootvpos}\IndexPLength{firstfootvpos}, which is % described above in this section. \end{Example} In the previous example a multi-line footer was set. With a compatibility setting to version 2.9u (see \Option{version} in \autoref{sec:scrlttr2.compatibilityOptions}, \autopageref{desc:scrlttr2.option.version}) the space will in general not suffice. In that case, you may need to reduce \PLength{firstfootvpos} (see \autopageref{desc:scrlttr2-experts.plength.firstfootvpos}) appropriately.% % \EndIndex{Variable}{frombank}% \EndIndex{Variable}{firstfoot}% % \EndIndex{}{letter>foot}% \EndIndex{}{letterfoot}% % \EndIndex{}{letter>first page}% \EndIndex{}{note paper}% \LoadCommon[scrlttr]{6} % \section{Paragraph Markup} \LoadCommon[scrlttr]{7} % \section{Detection of Odd and Even Pages} \section{Head and Foot Using Predefined Page Style} \label{sec:scrlttr2.pagestyle} \BeginIndex{}{page>style}% \BeginIndex{}{page>head}% \BeginIndex{}{page>foot}% One of the general properties of a document is the page style. In {\LaTeX} this means mostly the contents of headers and footers. Like\textnote{Attention!} already mentioned in \autoref{sec:scrlttr2.firstpage}, the head and foot of the note paper are treated as elements of the note paper. Therefore they do not depend on the settings of the page style. So this section describes the page styles of the consecutive pages of letter after the note paper. At single-side letters this is the page style of the secondary letter sheet. At double-side letters this is also the page style of all backsides. \begin{Declaration} \KOption{headsepline}\PName{simple switch}\\ \KOption{footsepline}\PName{simple switch} \end{Declaration} \BeginIndex{Option}{headsepline~=\PName{simple switch}}% \BeginIndex{Option}{footsepline~=\PName{simple switch}}% These two options select whether or not to insert a separator line\Index{line>separator}\Index{rule>separator} below the header or above the footer, respectively, on consecutive pages. This option can take the standard values for simple switches, as listed in \autoref{tab:truefalseswitch}, \autopageref{tab:truefalseswitch}. Activation\important{\OptionValue{headsepline}{true}} of option \Option{headsepline} switches on a rule below the page head. Activation\important{\OptionValue{footsepline}{true}} of option \Option{footsepline} switches on a rule above the page foot. Deactivation of the options switches of the corresponding rules. Obviously option \Option{headsepline} does not influence page styles \PValue{empty}\important[i]{\Pagestyle{empty}\\ \Pagestyle{plain}} and \PValue{plain} (see afterwards at this section). These page styles explicitly do not use any page head. Typographically\important[i]{\Pagestyle{headings}\\ \Pagestyle{myheadings}} such a rule make a hard optical connection of head or foot and the text area. This would not mean, that the distance between head and text or text and foot should be increased. Instead of this the head or foot should be seen as parts of the typing area, while calculation of margins and typing area. To achieve this \KOMAScript{} will pass option \Option{headinclude}\important[i]{\Opton{headinclude}\\ \Option{footinclude}} or \Option{footinclude}, respectively, to the \Package{typearea} package, if option \Option{headsepline} or \Option{footsepline}, respectively, are used as a class option. In\important{\Pagestyle{plain}} opposite to \Option{headsepline} option \Option{footsepline} does influence page style \PValue{plain} also, because \PValue{plain} uses a page number at the foot. Package \Package{scrpage2}\IndexPackage{scrpage2}\important{\Package{scrpage2}} (see \autoref{cha:scrpage}) provides additional features for rules at head and foot and may be combined with \Class{scrlttr2}.% % \EndIndex{Option}{headsepline~=\PName{simple switch}}% \EndIndex{Option}{footsepline~=\PName{simple switch}}% \begin{Declaration} \KOption{pagenumber}\PName{position} \end{Declaration} \BeginIndex{Option}{pagenumber~=\PName{position}}% This option defines if and where a page number will be placed on consecutive pages. This option affects the page styles\important[i]{\Pagestyle{headings}\\ \Pagestyle{myheadings}\\ \Pagestyle{plain}} \Pagestyle{headings}, \Pagestyle{myheadings}, and \Pagestyle{plain}. It also affects the default page styles of the \Package{scrpage2}\important{\Package{scrpage2}} package, if set before loading the package (see \autoref{cha:scrpage}). It can take values only influencing horizontal, only vertical, or both positions. Available value are shown in \autoref{tab:scrlttr2.pagenumber}. Default is \PValue{botcenter}. \begin{table} \caption[{available values of option \Option{pagenumber} with \Class{scrlttr2}}]{available values of option \Option{pagenumber} for the position of the page number in page styles \Pagestyle{headings}, \Pagestyle{myheadings}, and \PValue{plain} with \Class{scrlttr2}} \label{tab:scrlttr2.pagenumber} \begin{desctabular} \entry{\PValue{bot}, \PValue{foot}}{% page number in footer, horizontal position not changed}% \entry{\PValue{botcenter}, \PValue{botcentered}, \PValue{botmittle}, \PValue{footcenter}, \PValue{footcentered}, \PValue{footmiddle}}{% page number in footer, centered}% \entry{\PValue{botleft}, \PValue{footleft}}{% page number in footer, left justified}% \entry{\PValue{botright}, \PValue{footright}}{% page number in footer, right justified}% \entry{\PValue{center}, \PValue{centered}, \PValue{middle}}{% page number centered horizontally, vertical position not changed}% \entry{\PValue{false}, \PValue{no}, \PValue{off}}{% no page number}% \entry{\PValue{head}, \PValue{top}}{% page number in header, horizontal position not changed}% \entry{\PValue{headcenter}, \PValue{headcentered}, \PValue{headmiddle}, \PValue{topcenter}, \PValue{topcentered}, \PValue{topmiddle}}{% page number in header, centered}% \entry{\PValue{headleft}, \PValue{topleft}}{% page number in header, left justified}% \entry{\PValue{headright}, \PValue{topright}}{% page number in header, right justified}% \entry{\PValue{left}}{% page number left, vertical position not changed}% \entry{\PValue{right}}{% page number right, vertical position not changed}% \end{desctabular} \end{table} % \EndIndex{Option}{pagenumber~=\PName{position}}% \begin{Declaration} \Macro{pagestyle}\Parameter{page style}\\ \Macro{thispagestyle}\Parameter{local page style} \end{Declaration}% \BeginIndex{Cmd}{pagestyle}% \BeginIndex{Cmd}{thispagestyle}% \BeginIndex{Pagestyle}{empty}% \BeginIndex{Pagestyle}{plain}% \BeginIndex{Pagestyle}{headings}% \BeginIndex{Pagestyle}{myheadings}% In letters written with \Class{scrlttr2} there are four different page styles. \begin{description} \item[\Pagestyle{empty}] is the page style, in which the header and footer of consecutive pages are completely empty. This page style is also used for the first page, because header and footer of this page are set by other means using the macro \Macro{opening}\IndexCmd{opening} (see \autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.cmd.opening}). \item[\Pagestyle{headings}] is the page style for running (automatic) headings on consecutive pages. The inserted marks are the sender's name from the variable \Variable{fromname}\IndexVariable{fromname} and the subject from the variable \Variable{subject}\IndexVariable{subject} (see \autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.variable.fromname} and \autopageref{desc:scrlttr2.variable.subject}). At which position these marks and the page numbers are placed, depends on the previously described option \Option{pagenumber} and the \PName{content} of the variables \Variable{nexthead}\IndexVariable{nexthead} and \Variable{nextfoot}\IndexVariable{nextfoot}. The author can also change these marks manually after the \Macro{opening} command. To this end, the commands \Macro{markboth} and \Macro{markright} are available as usual, and with the use of package \Package{scrpage2} also \Macro{markleft} (see \autoref{sec:scrpage.basics.mark}, \autopageref{desc:scrpage.cmd.automark}) is available. \item[\Pagestyle{myheadings}] is the page style for manual page headings on consecutive pages. This is very similar to \PValue{headings}, but here the marks must be set by the author using the commands \Macro{markboth}\IndexCmd{markboth} and \Macro{markright}\Index{markright}. With the use of package \Package{scrpage2} also \Macro{markleft} can be utilized. \item[\Pagestyle{plain}] is the page style with only page numbers in the header or footer on consecutive pages. The placement of these page numbers is influenced by the previously described option \Option{pagenumber}. \end{description} Page styles are also influenced by the previously described options\important[i]{\Option{headsepline}\\\Option{footsepline}} \Option{headsepline}\IndexOption{headsepline} and \Option{footsepline}\IndexOption{footsepline}. The page style beginning with the current page is switched using \Macro{pagestyle}. In contrast, \Macro{thispagestyle} changes only the page style of the current page. The\textnote{Attention!} letter class itself uses \Macro{thispagestyle}\PParameter{empty} within \Macro{opening}\IndexCmd{opening} for the first page of the letter. \BeginIndex[indexother]{}{font>style}% \BeginIndex{FontElement}{pageheadfoot}% \BeginIndex{FontElement}{pagefoot}% \BeginIndex{FontElement}{pagenumber}% For changing the font style of headers or footers you should use the user interface described in \autoref{sec:maincls.textmarkup}. For header and footer the same element is used, which you can name either \FontElement{pageheadfoot}\important{\FontElement{pagehead}} or \FontElement{pagehead}. There\ChangedAt{v3.00}{\Class{scrlttr2}} is an additional element \FontElement{pagefoot}\important{\FontElement{pagefoot}} for the page foot. This will be used after \FontElement{pageheadfoot} at page foots, that has been defined either with variable \Variable{nextfoot}\IndexVariable{nextfoot} or Package \Package{scrpage2}\IndexPackage{scrpage2} (see \autoref{cha:scrpage}, \autopageref{desc:scrpage.fontelement.pagefoot}). The element for the page number within the header or footer is named \FontElement{pagenumber}\important{\FontElement{pagenumber}}. Default settings are listed in \autoref{tab:maincls.defaultFontsHeadFoot}, \autopageref{tab:maincls.defaultFontsHeadFoot}. Please have also a look at the example in \autoref{sec:maincls.pagestyle}, \autopageref{sec:maincls.pagestyle.example}. % \EndIndex{FontElement}{pagenumber}% \EndIndex{FontElement}{pagefoot}% \EndIndex{FontElement}{pageheadfoot}% \EndIndex[indexother]{}{font>style}% % \EndIndex{Pagestyle}{myheadings}% \EndIndex{Pagestyle}{headings}% \EndIndex{Pagestyle}{plain}% \EndIndex{Pagestyle}{empty}% \EndIndex{Cmd}{thispagestyle}% \EndIndex{Cmd}{pagestyle}% \begin{Declaration} \Macro{markboth}\Parameter{left mark}\Parameter{right mark}\\ \Macro{markright}\Parameter{right mark} \end{Declaration} \BeginIndex{Cmd}{markboth}% \BeginIndex{Cmd}{markright}% The possibilities that are offered with variables and options in \Class{scrlttr2} should be good enough in most cases to create letterheads and footers for the consecutive pages that follow the first letter page. Even more so since you can additionally change with \Macro{markboth} and \Macro{markright} the sender's statements that \Class{scrlttr2} uses to create the letterhead. The commands \Macro{markboth}\IndexCmd{markboth} and \Macro{markright}\IndexCmd{markright} can in particular be used together with pagestyle \PValue{myheadings}\IndexPagestyle{myheadings}% \important{\Pagestyle{myheadings}}. If the package \Package{scrpage2}\IndexPackage{scrpage2} is used then this, of course, is valid also for pagestyle \PValue{scrheadings}\IndexPagestyle{scrheadings}. There the command \Macro{markleft}\IndexCmd{markleft} is furthermore available. \begin{Declaration} \Macro{setkomavar}\PParameter{\Variable{nexthead}}% \OParameter{description}\Parameter{content}\\ \Macro{setkomavar}\PParameter{\Variable{nextfoot}}% \OParameter{description}\Parameter{content} \end{Declaration} \BeginIndex{Variable}{nexthead}% \BeginIndex{Variable}{nextfoot}% At times one wants to have more freedom with creating the letterhead or footer of subsequent pages. Then one has to give up the previously described possibilities of predefined letterheads or footers that could have been chosen via the option \Option{pagenumber}\IndexOption{pagenumber}. Instead one is free to create the letterhead and footer of consecutive pages just the way one wants to have them set with page style \Pagestyle{headings}\IndexPagestyle{headings}\important{\Pagestyle{headings}, \Pagestyle{myheadings}} or \Pagestyle{myheadings}\IndexPagestyle{myheadings}. For that, one creates the desired letterhead or footer construction using the \PName{content} of variable\ChangedAt{v3.08}{\Class{scrlttr2}} \Variable{nexthead} or \Variable{nextfoot}, respectively. Within the \PName{content} of \Variable{nexthead} and \Variable{nextfoot} you can, for example, have several boxes side by side or one beneath the other by use of the \Macro{parbox} command (see \cite{latex:usrguide}). A more advanced user should have no problems creating letterheads of footers of his own. Within \PName{content} you can and should of course also make use of other variables by using \Macro{usekomavar}. \KOMAScript{} does not use the \PName{description} of both variables. Only\textnote{Attention!} for compatibility reason the deprecated commands \Macro{nexthead}\IndexCmd[indexmain]{nexthead} and \Macro{nextfoot}\IndexCmd[indexmain]{nextfoot} of former \Class{scrlttr2} releases before 3.08 are also implemented. Nevertheless, you should not use those.% % \EndIndex{Variable}{nextfoot}% \EndIndex{Variable}{nexthead}% \EndIndex{Cmd}{markright}% \EndIndex{Cmd}{markboth}% % \EndIndex{}{page>foot}% \EndIndex{}{page>head}% \EndIndex{}{page>style}% \LoadCommon[scrlttr]{8} % \section{Interleaf Pages} \LoadCommon[scrlttr]{9} % \section{Footnotes} \LoadCommon[scrlttr]{11}% -"- \LoadCommon[scrlttr]{10}% -"- \LoadCommon[scrlttr]{12}% \section{Lists} \section{Math} \label{sec:scrlttr2.math}% \BeginIndex{}{equations}% \BeginIndex{}{formulas}% \BeginIndex{}{mathematics}% There are not math environments implemented at the \KOMAScript{} classes. Instead of this, the math features of the \LaTeX{} kernel have been supported. Furthermore\textnote{Attention!} regular math with numbered equations or formulas is very unusual at letters. Because of this \Class{scrlttr2} does not actively support numbered equations. Therefore options \Option{leqno} and \Option{fleqn}, that has been described for \Class{scrbook}, \Class{scrreprt}, and \Class{scrartcl} at \autoref{sec:maincls.math} are not available from \Class{scrlttr2}. You will not find a description of the math environments of the \LaTeX{} kernel here. If you want to use \Environment{displaymath}\IndexEnv{displaymath}, \Environment{equation}\IndexEnv{equation} and \Environment{eqnarray}\IndexEnv{eqnarray} you should read a short introduction into \LaTeX{} like \cite{lshort}. But\textnote{Hint!} if you want more than very simple mathematics, usage of package \Package{amsmath} would be recommended (see \cite{package:amsmath}).% % \EndIndex{}{mathematics} \EndIndex{}{formulas} \EndIndex{}{equations} \section{Floating Environments of Tables and Figures} \label{sec:scrlttr2.floats} Floating environments for tables or figures are very unusual in letters. Therefore\textnote{Attention!} \Class{scrlttr2} does not provide them. If someone nevertheless needs floating environments, then this is often points out a malpractice of the letter class. In such cases you may try to define the floating environments with help of packages like \Package{tocbasic}\important{\Package{tocbasic}} (siehe \autoref{cha:tocbasic}). Nevertheless, tabulars and pictures or graphics without floating environment may still be done with the letter class \Class{scrlttr2}. \LoadCommon[scrlttr2]{13} % \section{Margin Notes} \section{Closing} \label{sec:scrlttr2.closing} \BeginIndex{}{closing}% \BeginIndex{}{letter>closing}% \BeginIndex{}{signature}% \BeginIndex{}{letter>signature}% That the letter closing will be set by \Macro{closing}\IndexCmd{closing} has been explained already in \autoref{sec:scrlttr2.document}, \autopageref{desc:scrlttr2.cmd.closing}. A kind of annotation to the signature is often placed below the signature of the letter. The signing or hand-written inscription itself is placed between this signature annotation and the closing phrase. \begin{Declaration} \Macro{setkomavar}\PParameter{\Variable{signature}}% \OParameter{description}\Parameter{content} \end{Declaration} \BeginIndex{Variable}{signature}% The variable \Variable{signature} holds an explanation or annotation for the inscription, the signing of the letter. The \PName{content} is predefined as \Macro{usekomavar}\PParameter{fromname}. The annotation may consist of multiple lines. The lines should then be separated by a double backslash. Paragraph\textnote{Attention!} breaks in the annotation are however not permitted.% \begin{Declaration} \Macro{raggedsignature} \end{Declaration} \BeginIndex{Cmd}{raggedsignature}% Closing phrase and signature will be typeset in a box. The width of the box is determined by the length of the longest line of the closing phrase or signature's \PName{content}. Where to place this box is determined by the pseudo-lengths \PLength{sigindent}\IndexPLength{sigindent} and \PLength{sigbeforevskip}\IndexPLength{sigbeforevskip} (see \autoref{sec:scrlttr2-experts.closing}, \autopageref{desc:scrlttr2-experts.plength.sigindent}). The command \Macro{raggedsignature} defines the alignment inside the box. In the predefined \File{lco} files the command is either defined as \Macro{centering} (all besides \Option{KOMAold}) or \Macro{raggedright} (\Option{KOMAold}). In order to obtain flush-right or flush-left alignment inside the box, the command can be redefined in the same way as \Macro{raggedsection} (see \autoref{sec:maincls.structure}, \autopageref{desc:maincls.cmd.raggedsection}). \begin{Example} Now, Mr Public really wants to aggrandize himself. Therefor he uses the signature to show again, that he himself was formerly chairman. Because of this he changes \PName{contents} of variable \Variable{signature}. Additionally he wants the signature be flush-left aligned and so he also redefines \Macro{raggedsignature}:% \lstinputcode[xleftmargin=1em]{letter-22}% See \autoref{fig:scrlttr2.letter-22} for the result. \begin{figure} \setcapindent{0pt}% \begin{captionbeside}[{Example: letter with extended sender, logo, addressee, additional sender information, place, date, subject, opening, text, closing, modified signature, postscript, distribution list, enclosure, and puncher hole mark}] {result of a small letter with extended sender, logo, addressee, additional sender information, place, date, subject opening, text, closing, modified signature, postscript, distribution list, enclosure and puncher hole mark}[l] \frame{\includegraphics[width=.4\textwidth]{letter-22}} \end{captionbeside} \label{fig:scrlttr2.letter-22} \end{figure} \end{Example} % \EndIndex{Cmd}{raggedsignature}% % \EndIndex{Variable}{signature}% % \EndIndex{}{letter>signature}% \EndIndex{}{signature}% \EndIndex{}{letter>closing}% \EndIndex{}{closing}% \section{Letter Class Option Files} \label{sec:scrlttr2.lcoFile}% \BeginIndex{}{lco-file=\File{lco}-file}% \BeginIndex{}{letter class option}% \BeginIndex{}{letter>class option}% Normally, you would not redefine selections like the sender's information every time you write a letter. Instead, you would reuse a whole set of parameters for certain occasions. It will be much the same for the letterhead and footer used on the first page. Therefore, it is reasonable to save these settings in a separate file. For this purpose, the \Class{scrlttr2} class offers the \File{lco}-files. The \File{lco} suffix is an abbreviation for \emph{\emph{l}etter \emph{c}lass \emph{o}ption}. In an \File{lco} file you can use all commands available to the document at the time the \File{lco} file is loaded. Additionally, it can contain internal commands available to package writers. For \Class{scrlttr2}, these are in particular the commands \Macro{@newplength}\IndexCmd{@newplength}, \Macro{@setplength}\IndexCmd{@setplength}, and \Macro{@addtoplength}\IndexCmd{@addtoplength} (see \autoref{sec:scrlttr2-experts.pseudoLengths}). There are already some \File{lco} files included in the {\KOMAScript} distribution. The \File{DIN.lco}, \File{DINmtext.lco}, \File{SNleft.lco}, \File{SN.lco}, \File{UScommercial9}, \File{UScommercial9DW}, \File{NF.lco}\ChangedAt{v3.04}{\Class{scrlttr2}} files serve to adjust {\KOMAScript} to different layout standards. They are well suited as templates for your own parameter sets, while you become a \KOMAScript{} expert. The \File{KOMAold.lco} file, on the other hand, serves to improve compatibility with the old letter class \Class{scrlettr}. Since it contains internal commands not open to package writers, you should not use this as a template for your own \File{lco} files. You can find a list of predefined \File{lco} files in \autoref{tab:lcoFiles}, \autopageref{tab:lcoFiles}. If you have defined a parameter set for a letter standard not yet supported by \KOMAScript, you are explicitly invited to send this parameter set to the {\KOMAScript} support address. Please do not forget to include the permission for distribution under the {\KOMAScript} license (see the \File{lppl.txt} file). If you know the necessary metrics for an unsupported letter standard, but are not able to write a corresponding \File{lco} file yourself, you can also contact the {\KOMAScript} author, Markus Kohm, directly. More particular complex examples of \File{lco}-files are shown at \cite{homepage} or in \cite{DANTE:TK0203:MJK}. Both locations are mainly in German. \begin{Declaration} \Macro{LoadLetterOption}\Parameter{name} \end{Declaration} \BeginIndex{Cmd}{LoadLetterOption}% Usually, the \File{lco}-files will be loaded by the \Macro{documentclass} command. You enter the name of the \File{lco}-file without suffix as an option\Index{option}. The \File{lco}-file will be loaded right after the class file. However, it is also possible to load an \File{lco}-file later, or even from within another \File{lco}-file. This may be done with the \Macro{LoadLetterOption} command, which takes the \PName{name} of the \File{lco}-file without suffix as a parameter. \begin{Example} Mr Public also writes a document containing several letters. Most of them should comply with the German DIN standard. So he starts with: \begin{lstcode} \documentclass{scrlttr2} \end{lstcode} However, one letter should use the \File{DINmtext} variant, with the address field placed more toward the top, which results in more text fitting on the first page. The folding will be modified so that the address field still matches the address window in a DIN~C6/5 envelope. You can achieve this as follows: \begin{lstcode} \begin{letter}{% Joana Public\\ Hillside 1\\ 12345 Public-City} \LoadLetterOption{DINmtext} \opening{Hello,} \end{lstcode} Since construction of the page does not start before the \Macro{opening}\IndexCmd{opening} command, it is sufficient to load the \File{lco}-file before this. In particular, the loading need not be done before \Macro{begin}\PParameter{letter}. Therefore the changes made by loading the \File{lco}-file are local to the corresponding letter. \end{Example} If\ChangedAt{v2.97}{\Class{scrlttr2}} an \File{lco}-file is loaded via \Macro{documentclass}, then it may no longer have the same name as an option. \begin{Example} Since Mr~Public often writes letters with the same options and parameters, he does not like to copy all these to each new letter. To simplify the effort of writing a new letter, he therefore makes a \File{lco}-file:% \lstinputcode[xleftmargin=1em]{ich.lco}% With this the size of the previous letter decreases to: \lstinputcode[xleftmargin=1em]{letter-23.tex}% Nevertheless, as shown in \autoref{fig:scrlttr2.letter-23}, the result does not change. \begin{figure} \setcapindent{0pt}% \begin{captionbeside}[{Example: letter with extended sender, logo, addressee, additional sender information, place, date, subject, opening, text, closing, modified signature, postscript, distribution list, enclosure, and puncher hole mark using a \File{lco}-file}] {result of a small letter with extended sender, logo, addressee, additional sender information, place, date, subject opening, text, closing, modified signature, postscript, distribution list, enclosure and puncher hole mark using a \File{lco}-file}[l] \frame{\includegraphics[width=.4\textwidth]{letter-23}} \end{captionbeside} \label{fig:scrlttr2.letter-23} \end{figure} \end{Example} Please note\textnote{Attention!} that immediately after loading the document class normally neither a package for the input encoding nor a language package has been loaded. Because of this, you should use \TeX's 7-bit encoding for all characters, e.\,g., use ``\Macro{ss}'' to produce a German ``\ss''. In \autoref{tab:lcoFiles}, \autopageref{tab:lcoFiles} you can find a list of all predefined \File{lco} files. If\textnote{Attention!} you use a printer that has large unprintable areas on the left or right side, you might have problems with the \Option{SN}\IndexOption{SN} option. Since the Swiss standard SN~101\,130 defines the address field to be placed 8\Unit{mm} from the right paper edge, the headline and the sender attributes too will be set with the same small distance from the paper edge. This also applies to the reference line when using the \Option{refline}\PValue{=wide} option (see \autoref{sec:scrlttr2.firstpage}, \autopageref{desc:scrlttr2.option.refline}). If\textnote{Hint!} you have this kind of problem, create your own \File{lco} file that loads \Option{SN} first and then changes \PLength{toaddrhpos}\IndexPLength{toaddrhpos} (see \autoref{sec:scrlttr2-experts.addressee}, \autopageref{desc:scrlttr2-experts.plength.toaddrvpos}) to a smaller value. Additionally, also reduce \PLength{toaddrwidth} accordingly.% By\textnote{Hint!} the way, the \File{DIN} \File{lco}-file will always be loaded as the first \File{lco} file. This ensures that all pseudo-lengths will have more or less reasonable default values. Because of this, it is not necessary to load this default file on your own. Please\textnote{Attention!} note that it is not possible to use \Macro{PassOptionsToPackage} to pass options to packages from within an \File{lco}-file that have already been loaded by the class. Normally, this only applies to the \Package{typearea}, \Package{scrlfile}, \Package{scrbase}, and \Package{keyval} packages.% \begin{desclist} \renewcommand*{\abovecaptionskipcorrection}{-\normalbaselineskip}% \desccaption{% predefined \File{lco}-files\label{tab:lcoFiles}% }{% predefined \File{lco}-files (\emph{continuation})% }% \oentry{DIN}{% parameter set for letters on A4-size paper, complying with German standard DIN~676; suitable for window envelopes in the sizes C4, C5, C6, and C6/5 (C6 long).}% \oentry{DINmtext}{% parameter set for letters on A4-size paper, complying with DIN~676, but using an alternate layout with more text on the first page; only suitable for window envelopes in the sizes C6 and C6/5 (C6 long).}% \oentry{KakuLL}{% parameter set for Japanese letters in A4 format; suitable for Japanese window envelopes of type Kaku A4, in which the windows is approximately 90\Unit{mm} wide, 45\Unit{mm} high, and positioned 25\Unit{mm} from the left and 24\Unit{mm} from the top edge (see \autoref{cha:japanlco}).}% \oentry{KOMAold}{% parameter set for letters on A4-size paper using a layout close to the now obsolete \Class{scrlettr} letter class; suitable for window envelopes in the sizes C4, C5, C6, and C6/5 (C6 long); some additional commands to improve compatibility with obsolete \Class{scrlettr} commands are defined; \Class{scrlttr2} may behave slightly different when used with this \File{lco}-file than with the other \File{lco}-files.}% \oentry{NF}{% parameter set for French letters, according to NF~Z~11-001; suitable for window envelopes of type DL (110\Unit{mm} to 220\Unit{mm}) with a window of about 20\Unit{mm} from right and bottom with width 45\Unit{mm} and height 100\Unit{mm}; this file was originally developed by Jean-Marie Pacquet, who provides an extended version and additional information on \cite{www:NF.lco}.}% \oentry{NipponEH}{% parameter set for Japanese letters in A4 format; suitable for Japanese window envelopes of types Chou or You 3 or 4, in which the windows is approximately 90\Unit{mm} wide, 55\Unit{mm} high, and positioned 22\Unit{mm} from the left and 12\Unit{mm} from the top edge (see \autoref{cha:japanlco}).}% \oentry{NipponEL}{% parameter set for Japanese letters in A4 format; suitable for Japanese window envelopes of types Chou or You 3 or 4, in which the windows is approximately 90\Unit{mm} wide, 45\Unit{mm} high, and positioned 22\Unit{mm} from the left and 12\Unit{mm} from the top edge (see \autoref{cha:japanlco}).}% \oentry{NipponLH}{% parameter set for Japanese letters in A4 format; suitable for Japanese window envelopes of types Chou or You 3 or 4, in which the windows is approximately 90\Unit{mm} wide, 55\Unit{mm} high, and positioned 25\Unit{mm} from the left and 12\Unit{mm} from the top edge (see \autoref{cha:japanlco}).}% \oentry{NipponLL}{% parameter set for Japanese letters in A4 format; suitable for Japanese window envelopes of types Chou or You 3 or 4, in which the windows is approximately 90\Unit{mm} wide, 45\Unit{mm} high, and positioned 25\Unit{mm} from the left and 12\Unit{mm} from the top edge (see \autoref{cha:japanlco}).}% \oentry{NipponRL}{% parameter set for Japanese letters in A4 format; suitable for Japanese window envelopes of types Chou or You 3 or 4, in which the windows is approximately 90\Unit{mm} wide, 45\Unit{mm} high, and positioned 25\Unit{mm} from the left and 24\Unit{mm} from the top edge (see \autoref{cha:japanlco}).}% \oentry{SN}{% parameter set for Swiss letters with address field on the right side, according to SN~010\,130; suitable for Swiss window envelopes in the sizes C4, C5, C6, and C6/5 (C6 long).}% \oentry{SNleft}{% parameter set for Swiss letters with address field on the left side; suitable for Swiss window envelopes with window on the left side in the sizes C4, C5, C6, and C6/5 (C6 long).}% \oentry{UScommercial9}{% parameter set for US-American letters with paper size letter; suitable for US-American window envelopes of size \emph{commercial~No.\,9} with window width of 4\,1/2\Unit{in}, height of 1\,1/8\Unit{in}, and position of 7/8\Unit{in} from the left and 1/2\Unit{in} from the bottom, without sender's return address inside of the window; with folding it first at the puncher mark then at the top folder mark also legal paper may be used but would result in a page size warning}% \oentry{UScommercial9DW}{% parameter set for US-American letters with paper size letter; suitable for US-American window envelopes of size \emph{commercial~No.\,9} with addressee's window width of 3\,5/8\Unit{in}, height of 1\,1/8\Unit{in}, and position of 3/4\Unit{in} from the left and 1/2\Unit{in} from the bottom, and with a sender's window width of 3\,1/2\Unit{in}, height of 7/8\Unit{in}, and position of 5/16\Unit{in} from the left and 2\,1/2\Unit{in} from the bottom, but without a sender's return address at any of the windows; with folding it first at the puncher mark then at the top folder mark also legal paper may be used but would result in a page size warning}% \end{desclist} % \EndIndex{Cmd}{LoadLetterOption}% % \EndIndex{}{lco-file=\File{lco}-file}% \EndIndex{}{letter class option}% \EndIndex{}{letter>class option}% \section{Address Files and Circular Letters} \label{sec:scrlttr2.addressFile}% \BeginIndex{}{address>file}% \BeginIndex{}{circular letters}% \index{serial letters|see circular letters}% When people write circular letters one of the more odious tasks is the typing of many different addresses. The class \Class{scrlttr2}% \iffalse% Umbruchkorrekturtext , as did its predecessor \Class{scrlettr} as well,% \fi% \ provides basic support for this task.% \iffalse% Umbruchkorrekturtext \ Currently there are plans for much enhanced support.% \fi \begin{Declaration} \Macro{adrentry}\Parameter{last-name}\Parameter{first-name}% \Parameter{address}\Parameter{phone}\Parameter{F1}\Parameter{F2}% \Parameter{comment}\Parameter{key} \end{Declaration}% \BeginIndex{Cmd}{adrentry}% The class \Class{scrlttr2} supports the use of address files which contain address entries, very useful for circular letters. The file extension of the address file has to be \File{.adr}. Each entry is an \Macro{adrentry} command with eight parameters, for example: \begin{lstcode} \adrentry{McEnvy} {Flann} {Main Street 1\\ Glasgow} {123 4567} {male} {} {niggard} {FLANN} \end{lstcode} The 5\textsuperscript{th} and 6\textsuperscript{th} elements, \PValue{F1} and \PValue{F2}, can be used freely: for example, for the gender, the academic grade, the birthday, or the date on which the person joined a society. The last parameter \PName{key} should only consist of more than one uppercase letters in order to not interfere with existing {\TeX} or {\LaTeX} commands. \begin{Example} Mr McEnvy is one of your most important business partners, but every day you receive correspondence from him. Before long you do not want to bother typing his boring address again and again. Here \Class{scrlttr2} can help. Assume that all your business partners have an entry in your \File{partners.adr} address file. If you now have to reply to Mr~McEnvy again, then you can save typing as follows: \begin{lstcode} \input{partners.adr} \begin{letter}{\FLANN} Your correspondence of today \dots \end{letter} \end{lstcode} Your {\TeX} system must be configured to have access to your address file. Without access, the \Macro{input} command results in an error. You can either put your address file in the same directory where you are running {\LaTeX}, or configure your system to find the file in a special directory. \end{Example} % \EndIndex{Cmd}{adrentry} \begin{Declaration} \Macro{addrentry}\Parameter{last-name}\Parameter{first-name}% \Parameter{address}\Parameter{phone}\Parameter{F1}\Parameter{F2}% \Parameter{F3}\Parameter{F4}\Parameter{key} \end{Declaration}% \BeginIndex{Cmd}{addrentry}% Over the years people have objected that the \Macro{adrentry} has only two free parameters. To cater to this demand, there now exists a new command called \Macro{addrentry}\,---\,note the additional ``d''\,---\,which supports four freely-definable parameters. Since {\TeX} supports maximally nine parameters per command, the comment parameter has fallen away. Other than this difference, the use is the same as that of \Macro{adrentry}. Both \Macro{adrentry} and \Macro{addrentry} commands can be freely mixed in the \File{adr} files. However, it should be noted that there are some packages which are not suited to the use of \Macro{addrentry}. For example, the \Package{adrconv} by Axel Kielhorn can be used to create address lists from \File{adr} files, but it has currently no support for command \Macro{addrentry}. In this case, the only choice is to extend the package yourself.% % \EndIndex{Cmd}{addrentry} Besides the simple access to addresses, the address files can be easily used in order to write circular letters. Thus, there is no requirement to access a complicated database system via {\TeX}. % \begin{Example} Suppose you are member of a society and want write an invitation for the next general meeting to all members. \begin{lstcode} \documentclass{scrlttr2} \begin{document} \renewcommand*{\adrentry}[8]{ \begin{letter}{#2 #1\\#3} \opening{Dear members,} Our next general meeting will be on Monday, August 12, 2002. The following topics are \dots \closing{Regards,} \end{letter} } \input{members.adr} \end{document} \end{lstcode} If the address file contains \Macro{addrentry} commands too, than an additional definition for \Macro{addrentry} is required before loading the address file: \begin{lstcode} \renewcommand*{\addrentry}[9]{% \adrentry{#1}{#2}{#3}{#4}{#5}{#6}{#7}{#9}% } \end{lstcode} In this simple example the extra freely-definable parameter is not used, and therefore \Macro{addrentry} is defined with the help of \Macro{adrentry}. \end{Example} With some additional programming one can let the content of the letters depend on the address data. For this the free parameters of the \Macro{adrentry} and and \Macro{addrentry} commands can be used. \begin{Example} Suppose the 5\textsuperscript{th} parameter of the \Macro{adrentry} command contains the gender of a member (\PValue{m/f}), and the 6\textsuperscript{th} parameter contains what amount of subscription has not yet been paid by the member. If you would like to write a more personal reminder to each such member, then the next example can help you: \begin{lstcode} \renewcommand*{\adrentry}[8]{ \ifdim #6pt>0pt\relax % #6 is an amount greater than 0. % Thus, this selects all members with due subscription. \begin{letter}{#2 #1\\#3} \if #5m \opening{Dear Mr.\,#2,} \fi \if #5f \opening{Dear Mrs.\,#2,} \fi Unfortunately we have to remind you that you have still not paid the member subscription for this year. Please remit EUR #6 to the account of the society. \closing{Regards,} \end{letter} \fi } \end{lstcode} \end{Example} As you can see, the letter text can be made more personal by depending on attributes of the letter's addressee. The number of attributes is only restricted by number of two free parameters of the \Macro{adrentry} command, or four free parameters of the \Macro{addrentry} command. \begin{Declaration} \Macro{adrchar}\Parameter{initial letter}\\ \Macro{addrchar}\Parameter{initial letter} \end{Declaration} \BeginIndex{Cmd}{adrchar}% \BeginIndex{Cmd}{addrchar}% \Index[indexmain]{address>list}\Index[indexmain]{telephone list}% As already mentioned above, it is possible to create address and telephone lists using \File{adr} files. For that, the additional package \Package{adrconv} by Axel Kielhorn (see \cite{package:adrconv}) is needed. This package contains interactive {\LaTeX} documents which help to create those lists. The address files have to be sorted already in order to obtain sorted lists. It is recommended to separate the sorted entries at each different initial letter of \PName{last name}. As a separator, the commands \Macro{adrchar} and \Macro{addrchar} can be used. These commands will be ignored if the address files are utilized in \Class{scrlettr2}. % \begin{Example} Suppose you have the following short address file: \begin{lstlisting} \adrchar{A} \adrentry{Angel}{Gabriel} {Cloud 3\\12345 Heaven's Realm} {000\,01\,02\,03}{}{}{archangel}{GABRIEL} \adrentry{Angel}{Michael} {Cloud 3a\\12345 Heaven's Realm} {000\,01\,02\,04}{}{}{archangel}{MICHAEL} \adrchar{K} \adrentry{Kohm}{Markus} {Freiherr-von-Drais-Stra\ss e 66\\68535 Edingen-Neckarhausen} {+49~62\,03~1\,??\,??}{}{}{no angel at all} {KOMA} \end{lstlisting} This address file can be treated with \File{adrdir.tex} of the \Package{adrconv} package~\cite{package:adrconv}. The result should look like this: \begin{center} \setlength{\unitlength}{1mm} \begin{picture}(80,57) \put(0,57){\line(1,0){80}} \put(0,3){\line(0,1){54}} \put(80,3){\line(0,1){54}} \thicklines \put(10,42){\line(1,0){60}} \put(70,45){\makebox(0,0)[r]{\textsf{\textbf{A}}}} \put(10,23){\makebox(0,20)[l]{\parbox{5cm}{\raggedright \textsc{Angel}, Gabriel\\\quad\small Cloud 3\\ \quad 12345 Heaven's Realm\\ \quad (archangel)}}} \put(70,23){\makebox(0,20)[r]{\parbox{2cm}{\raggedright~\\ \small~\\\textsc{gabriel}\\000\,01\,02\,03}}} \put(10,4){\makebox(0,20)[l]{\parbox{5cm}{\raggedright \textsc{Angel}, Michael\\\quad\small Cloud 3a\\ \quad 12345 Heaven's Realm\\ \quad (archangel)}}} \put(70,4){\makebox(0,20)[r]{\parbox{2cm}{\raggedright~\\ \small~\\\textsc{michael}\\000\,01\,02\,04}}} \qbezier(0,3)(10,6)(40,3)\qbezier(40,3)(60,0)(80,3) \end{picture} \end{center} The letter in the page header is created by the \Macro{adrchar} command. The definition can be found in \File{adrdir.tex}. \end{Example} More about the \Package{adrconv} package can be found in its documentation. There you should also find information about whether the current version of \Package{adrconv} supports the \Macro{addrentry} and \Macro{addrchar} commands. Former versions only know the commands \Macro{adrentry} and \Macro{adrchar}.% % \EndIndex{Cmd}{adrchar}% \EndIndex{Cmd}{addrchar}% % \EndIndex{}{circular letters}% \EndIndex{}{address>file}% % \EndIndex{Class}{scrlttr2}% \EndIndex{}{letters}% %%% Local Variables: %%% mode: latex %%% mode: flyspell %%% coding: us-ascii %%% ispell-local-dictionary: "en_GB" %%% TeX-master: "../guide" %%% End: % LocalWords: scrlttr simpleSwitchValues afteropening beforeopening Combinable % LocalWords: locfield Hennig Kohm