% dinbrief.sty  vom 4. April 1990; von Rainer Sengerling (Inst. f. Theor.
% u. Angew. Physik, Uni Stuttgart) aus letter.sty 21 Jul 85  entwickelt
% fuer vordrucklose Briefe im A4-Format, entsprechend  den DIN-Normen
% 5008 (von 1986), 2107, 2142 und 676
%
% Kontaktadresse: Wolfgang Schwarz
%                 Inst. f. Theoret. u.
%                 Angewandte Physik
%                 Uni Stuttgart
%                 BLACKY@DS0ITA51   (eine Null, kein Oh)
\typeout{Document Style 'dinbrief' von R. Sengerling, 4. 4. 1990}
\def\@ptsize{0} \@namedef{ds@11pt}{\def\@ptsize{1}}
\@namedef{ds@12pt}{\def\@ptsize{2}}
\@namedef{ds@norm}{\def\@ptsize{3}}
\@twosidefalse
\def\ds@draft{\overfullrule 5pt}
\@options
%Option fuer deutsche Version (Datum)
\newif\if@german\@germanfalse
\def\ds@german{\@germantrue}
\@options
\lineskip 1pt \normallineskip 1pt
\def\baselinestretch{1}
%Grundzeilenabstand 1/6in = 4,23mm (DIN 2107,2142)
\newdimen\GZA
\GZA=1in
\divide\GZA by 6
\ifcase \@ptsize\relax
\def\@normalsize{\@setsize\normalsize{12pt}\xpt\@xpt
\abovedisplayskip 10pt plus2pt minus5pt\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus3pt\belowdisplayshortskip 6pt plus3pt minus3pt}
\def\small{\@setsize\small{11pt}\ixpt\@ixpt
\abovedisplayskip 8.5pt plus 3pt minus 4pt\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus2pt\belowdisplayshortskip 4pt plus2pt minus 2pt}
\def\footnotesize{\@setsize\footnotesize{9.5pt}\viiipt\@viiipt
\abovedisplayskip 6pt plus 2pt minus 4pt\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus 1pt\belowdisplayshortskip 3pt plus 1pt minus
2pt}
\def\scriptsize{\@setsize\scriptsize{8pt}\viipt\@viipt}
\def\tiny{\@setsize\tiny{6pt}\vpt\@vpt}
\def\large{\@setsize\large{14pt}\xiipt\@xiipt}
\def\Large{\@setsize\Large{18pt}\xivpt\@xivpt}
\def\LARGE{\@setsize\LARGE{22pt}\xviipt\@xviipt}
\def\huge{\@setsize\huge{25pt}\xxpt\@xxpt}
\def\Huge{\@setsize\Huge{30pt}\xxvpt\@xxvpt}
\or
\def\@normalsize{\@setsize\normalsize{13.6pt}\xipt\@xipt
\abovedisplayskip 11pt plus3pt minus6pt\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus3pt\belowdisplayshortskip 6.5pt plus3.5pt
minus3pt}
\def\small{\@setsize\small{12pt}\xpt\@xpt
\abovedisplayskip 10pt plus2pt minus5pt\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus3pt\belowdisplayshortskip 6pt plus3pt minus3pt}
\def\footnotesize{\@setsize\footnotesize{11pt}\ixpt\@ixpt
\abovedisplayskip 8pt plus 2pt minus 4pt\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus 1pt\belowdisplayshortskip 4pt plus 2pt minus
2pt}
\def\scriptsize{\@setsize\scriptsize{9.5pt}\viiipt\@viiipt}
\def\tiny{\@setsize\tiny{7pt}\vipt\@vipt}
\def\large{\@setsize\large{14pt}\xiipt\@xiipt}
\def\Large{\@setsize\Large{18pt}\xivpt\@xivpt}
\def\LARGE{\@setsize\LARGE{22pt}\xviipt\@xviipt}
\def\huge{\@setsize\huge{25pt}\xxpt\@xxpt}
\def\Huge{\@setsize\Huge{30pt}\xxvpt\@xxvpt}
\or
\def\@normalsize{\@setsize\normalsize{15pt}\xiipt\@xiipt
\abovedisplayskip 12pt plus3pt minus7pt\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus3pt\belowdisplayshortskip 6.5pt plus3.5pt
minus3pt}
\def\small{\@setsize\small{13.6pt}\xipt\@xipt
\abovedisplayskip 11pt plus3pt minus6pt\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus3pt\belowdisplayshortskip 6.5pt plus3.5pt
minus3pt}
\def\footnotesize{\@setsize\footnotesize{12pt}\xpt\@xpt
\abovedisplayskip 10pt plus2pt minus5pt\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus3pt\belowdisplayshortskip 6pt plus3pt minus3pt}
\def\scriptsize{\@setsize\scriptsize{9.5pt}\viiipt\@viiipt}
\def\tiny{\@setsize\tiny{7pt}\vipt\@vipt}
\def\large{\@setsize\large{18pt}\xivpt\@xivpt}
\def\Large{\@setsize\Large{22pt}\xviipt\@xviipt}
\def\LARGE{\@setsize\LARGE{25pt}\xxpt\@xxpt}
\def\huge{\@setsize\huge{30pt}\xxvpt\@xxvpt}
\let\Huge=\huge
\or
% Norm-Option (DIN 2107, 2142)
\def\@normalsize{\@setsize\normalsize{1\GZA}\xipt\@xipt
\abovedisplayskip 11pt plus3pt minus6pt\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus3pt\belowdisplayshortskip 6.5pt plus3.5pt
minus3pt}
\def\small{\@setsize\small{11pt}\xpt\@xpt
\abovedisplayskip 10pt plus2pt minus5pt\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus3pt\belowdisplayshortskip 6pt plus3pt minus3pt}
\def\footnotesize{\@setsize\footnotesize{11pt}\ixpt\@ixpt
\abovedisplayskip 8pt plus 2pt minus 4pt\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus 1pt\belowdisplayshortskip 4pt plus 2pt minus
2pt}
\def\scriptsize{\@setsize\scriptsize{9.5pt}\viiipt\@viiipt}
\def\tiny{\@setsize\tiny{7pt}\vipt\@vipt}
\def\large{\@setsize\large{14pt}\xiipt\@xiipt}
\def\Large{\@setsize\Large{18pt}\xivpt\@xivpt}
\def\LARGE{\@setsize\LARGE{22pt}\xviipt\@xviipt}
\def\huge{\@setsize\huge{25pt}\xxpt\@xxpt}
\def\Huge{\@setsize\Huge{30pt}\xxvpt\@xxvpt}
\fi
\normalsize
\long\def\Einrueckung#1{\par\begin{tabular}{@{\hspace{1in}}p{5in}@{}}#1
 \end{tabular}\par}
\def\Absender#1{\def\fromaddress{#1}}
\def\fromaddress{}
\newif\iffenster\fensterfalse
\def\Fenster{\fenstertrue}
\def\Retouradresse#1{\def\returnaddress{#1}}
\def\returnaddress{}
\def\Postvermerk#1{\def\Vermerk{#1}}
\def\Vermerk{}
\def\Betreff#1{\def\betreff{\ignorespaces #1}}
\def\betreff{}
\def\Datum#1{\def\date{#1}}
\def\date{\if@german\heute\else\today\fi}
\newif\ifanlagenr\anlagenrfalse
\def\anlagenrechts{\anlagenrtrue}
\def\Anlagen#1{\def\Anlagentext{#1}}
\def\Anlagentext{}
\def\Verteiler#1{\def\Verteilertext{#1}}
\def\Verteilertext{}
%Parameter fuer Feineinstellung des Druckers
\newdimen\feinx
\newdimen\feiny
\feinx=0.55mm
\feiny=-1.3mm
\newcount\sparzahl
\sparzahl=0
\def\spare#1{\sparzahl=#1}
\newdimen\Etiketthoehe
\Etiketthoehe=4.1cm
\newif\ifretour\retourfalse
\def\Retourlabel{\retourtrue}
\oddsidemargin 0pt \evensidemargin 0pt \marginparwidth 90pt \marginparsep
11pt \marginparpush 5pt
\topmargin -2\GZA \headheight 1\GZA \headsep 2\GZA \footheight 12pt
\footskip 25pt \topskip 1\GZA
\textheight 55\GZA \textwidth 6in \columnsep 10pt \columnseprule 0pt
% Anpassung an Druckereinstellung
\advance\topmargin by \feiny
\advance\oddsidemargin by \feinx
\advance\evensidemargin by \feinx
\raggedbottom
\footnotesep 12pt \skip\footins 10pt plus 2pt minus 4pt
\floatsep 12pt plus 2pt minus 2pt
\textfloatsep 20pt plus 2pt minus 4pt
\intextsep 12pt plus 2pt minus 2pt
\dblfloatsep 12pt plus 2pt minus 2pt
\dbltextfloatsep 20pt plus 2pt minus 4pt
\@maxsep 20pt
\@dblmaxsep 20pt
\@fptop 0pt plus 1fil
\@fpsep 8pt plus 2fil
\@fpbot 0pt plus 1fil
\@dblfptop 0pt plus 1fil
\@dblfpsep 8pt plus 2fil
\@dblfpbot 0pt plus 1fil
%Neudefinition des opening-Befehls
\def\opening#1{\thispagestyle{empty}
 \unitlength1mm
 \begin{picture}(0,0)
 %Absenderadresse und Datum
 \put(0,12.69){%
 \parbox[t]{1\textwidth}{\parbox[t]{3in}{\fromaddressI\fromaddressII}
 \hfill \date }}
 %Fenster
 \iffenster\fenst\fi
 \put(0,-21.15){\parbox[t]{3in}{\Vermerk \mbox{}\par\toaddress}}
 \end{picture}
 %Anpassung fuer Betreff
 \mbox{}\par
 \vspace{-1\parskip}
 \vspace{15\GZA}
 %Anpassung wegen der verschiedenen Grundzeilenabstaende
 \ifcase\@ptsize\vspace{0.045pt}\or\vspace{-1.555pt}\or\vspace{-2.955pt}\or\fi
 \betreff \mbox{} \par
 \vspace{-1\parskip}
 \vspace{2\GZA}
 %Anpassung wegen der verschiedenen Grundzeilenabstaende
 \ifcase\@ptsize\vspace{0.045pt}\or\vspace{-1.555pt}\or\vspace{-2.955pt}\or\fi
 \def\Anrede{#1}
 \ifx\Anrede\empty \else #1\par\fi\nobreak}
\def\fenst{%
 %Faltmarken
 \put(-19,-71.16){\line(1,0){3}}
 \put(-19,-176.16){\line(1,0){3}}
 %bei der gegenwaertigen Druckereinstellung wird die obere
 %Faltmarke besser nicht ausgegeben
 %\put(122.6,29){\line(0,1){3}}
 %Strich unter Returnadresse
 \put(-5.4,-16.16){\line(1,0){85}}
 %Setzen der Returnadresse
 \put(-5.4,-16.16){\makebox(85,4){\viipt\returnaddress}}}
%Neudefinition des closing-Befehls
\long\def\closing#1{\par\nobreak
 \stopbreaks
 \noindent
 \parbox[t]{3.5in}{\raggedright
 \ignorespaces #1 \mbox{} \\[4\GZA]
 \ifx\@empty\fromsig
 \relax
 \else \fromsig \fi\strut}
 \ifanlagenr\hfill \parbox[t]{2in}{\An}
 \else \par\An \fi}
\def\An{\ifx\Anlagentext\empty\else\Anlagentext
 \par \fi \ifx\Verteilertext\empty\else\Verteilertext\fi}
\def\ps{\par\startbreaks}
\def\stopletter{}
\newcount\labelcount
%Neudefinition des startlabel-Befehls
\def\startlabels{\labelcount=0 \baselineskip=0pt \lineskip=0pt
\setcounter{page}{91}
\pagestyle{empty}
\topmargin 2.23cm
\topskip 0pt
\headheight 0pt
\headsep 0pt
\oddsidemargin -2cm
\evensidemargin -2cm
%Druckeranpassung
\advance\topmargin by \feiny
\advance\oddsidemargin by \feinx
\advance\evensidemargin by \feinx
\textheight=6\Etiketthoehe
\advance\textheight by .05cm
\@colht\textheight \@colroom\textheight \vsize\textheight
\textwidth 19.8cm
\columnsep 1.2cm
\xipt
\baselineskip=0pt
\lineskip=0pt
\boxmaxdepth=0pt
\twocolumn
\relax
\ifnum\sparzahl>0
 \ifnum\sparzahl>5\mbox{}\newpage\advance\sparzahl by -6\fi
 \vspace*{\sparzahl\Etiketthoehe}\par\fi}
\long\def\mlabel#1#2#3{\def\test{#1}
 \ifx\test\empty \parskip=1\GZA\else \parskip=2mm  \fi
 \baselineskip1\GZA
 \setbox0\vbox{\ifx\test\empty\else
 \underline{\rule[-0.9mm]{0pt}{3.2mm}\makebox[9.3cm]{\viipt \rm #1}}\\ \fi
 \hspace*{0.54cm}
 \parbox[b]{8.7cm}{\ignorespaces
 #2\rule{0pt}{10pt} \par #3 }}
 \vbox to \Etiketthoehe{\box0\vss }}
\long\def\retourlabel#1{\setbox0\vbox{\baselineskip1\GZA\parskip=1\GZA
 \hspace*{0.2cm}
 \parbox[b]{8.7cm}{\ignorespaces \rule{0pt}{18pt}#1}}
 \vbox to \Etiketthoehe{\box0\vss }}
%Neudefinition des letter-Befehls
\long\def\letter#1{\newpage
 \c@page\@ne
 \interlinepenalty=200 \def\toaddress{#1}}
%Neudefinition des endletter-Befehls
\def\endletter{\stopletter\@@par\pagebreak\@@par
 %Unterdrueckung der Adressetikettenausgabe bei Fenster-Option
 \iffenster\@fileswfalse\fi
 \if@filesw
 \begingroup
 \def\protect{\string}
 \let\\=\relax
 \def\protect##1{\string##1\space}
 \ifretour
 \immediate\write\@auxout{\string\mlabel{\empty}{\Vermerk}{\toaddress}}
 \immediate\write\@auxout{\string\retourlabel{\fromaddressI}}
 \else
 \immediate\write\@auxout{\string\mlabel{\returnaddress}{\Vermerk}%
 {\toaddress}}\fi
 \endgroup
 \fi}
\def\stopbreaks{\interlinepenalty \@M
 \def\par{\@@par\nobreak}\let\\=\@nobreakcr
 \let\vspace\@nobreakvspace}
\def\@nobreakvspace{\@ifstar{\@nobreakvspacex}{\@nobreakvspacex}}
\def\@nobreakvspacex#1{\ifvmode\nobreak\vskip #1\relax\else
 \@bsphack\vadjust{\nobreak\vskip #1}\@esphack\fi}
\def\@nobreakcr{\vadjust{\penalty\@M}\@ifstar{\@xnewline}{\@xnewline}}
\def\startbreaks{\let\\=\@normalcr
 \interlinepenalty 200\def\par{\@@par\penalty 200}}
\def\signature#1{\def\fromsig{#1}}
\def\fromsig{}
%Neudefinition des Absenderbefehls
\long\def\Absender#1{\@processto{#1}}
\def\fromaddressI{}\def\fromaddressII{}
%Aufspaltung der Absenderadresse mit Hilfe der modifizierten
%Routinen \@processto, \@xproc und \@yproc
\long\def\@processto#1{\@xproc #1::@@@\ifx\fromaddressII\@empty
\else \@yproc #1@@@\fi}
\long\def\@xproc #1::#2@@@{\def\fromaddressI{#1}\def\fromaddressII{#2}}
\long\def\@yproc #1::#2@@@{\def\fromaddressII{#2}}
\def\document{\endgroup
 \@colht\textheight \@colroom\textheight \vsize\textheight
 \columnwidth\textwidth \@clubpenalty\clubpenalty
 \if@twocolumn \advance\columnwidth -\columnsep
 \divide\columnwidth\tw@ \hsize\columnwidth \@firstcolumntrue
 \fi
 \hsize\columnwidth \linewidth\hsize
 \begingroup\@floatplacement\@dblfloatplacement\endgroup
 \if@filesw \immediate\openout\@mainaux=\jobname.aux
 \immediate\write\@mainaux{\string\startlabels\string\@startlabels}\fi
 \def\do##1{\let ##1\@notprerr}
 \@preamblecmds
 \let\do\noexpand
 \@normalsize\everypar{}}
\def\enddocument{\@checkend{document}\newpage\begingroup
\if@filesw \immediate\closeout\@mainaux
\makeatletter\input \jobname.aux\clearpage
\fi\endgroup\deadcycles\z@\@@end}
\def\makelabels{\@fileswtrue}
\def\@startlabels{}
\def\ps@empty{\def\@oddhead{}\def\@oddfoot{}\def\@evenhead{}\def\@evenfoot{}}
%Neudefinition des plain-Stiles
\def\ps@plain{\def\@oddfoot{}\def\@oddhead{\rm\hspace{3in}
 -- \thepage\ --\hfil}
 \def\@evenfoot{}\let\@evenhead\@oddhead}
\ifnum\@ptsize=3\parskip=1\baselineskip\else \parskip=0.7em\fi
\parindent 0pt \topsep .4em \partopsep 0pt \itemsep .4em
\@lowpenalty 51 \@medpenalty 151 \@highpenalty 301
\@beginparpenalty -\@lowpenalty \@endparpenalty -\@lowpenalty \@itempenalty
-\@lowpenalty
\leftmargini 2.5em
\leftmarginii 2.2em \leftmarginiii 1.87em \leftmarginiv 1.7em \leftmarginv 1em
\leftmarginvi 1em
\leftmargin\leftmargini
\labelwidth\leftmargini\advance\labelwidth-\labelsep
\labelsep 5pt
\parsep 0pt
\let\@listi\relax
\def\@listii{\leftmargin\leftmarginii
 \labelwidth\leftmarginii\advance\labelwidth-\labelsep}
\def\@listiii{\leftmargin\leftmarginiii
 \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
 \topsep .2em
 \itemsep \topsep}
\def\@listiv{\leftmargin\leftmarginiv
 \labelwidth\leftmarginiv\advance\labelwidth-\labelsep}
\def\@listv{\leftmargin\leftmarginv
 \labelwidth\leftmarginv\advance\labelwidth-\labelsep}
\def\@listvi{\leftmargin\leftmarginvi
 \labelwidth\leftmarginvi\advance\labelwidth-\labelsep}
\def\labelenumi{\arabic{enumi}.}
\def\theenumi{\arabic{enumi}}
\def\labelenumii{(\alph{enumii})}
\def\theenumii{\alph{enumii}}
\def\p@enumii{\theenumi}
\def\labelenumiii{\roman{enumiii}.}
\def\theenumiii{\roman{enumiii}}
\def\p@enumiii{\theenumi(\theenumii)}
\def\labelenumiv{\Alph{enumiv}.}
\def\theenumiv{\Alph{enumiv}}
\def\p@enumiv{\p@enumiii\theenumiii}
\def\labelitemi{$\bullet$}
\def\labelitemii{\bf --}
\def\labelitemiii{$\ast$}
\def\labelitemiv{$\cdot$}
\def\verse{\let\\=\@centercr
 \list{}{\itemsep\z@ \itemindent -15pt\listparindent \itemindent
 \rightmargin\leftmargin\advance\leftmargin 15pt}\item[]}
\let\endverse\endlist
\def\quotation{\list{}{\listparindent 1.5em
 \itemindent\listparindent
 \rightmargin\leftmargin}\item[]}
\let\endquotation=\endlist
\def\quote{\list{}{\rightmargin\leftmargin}\item[]}
\let\endquote=\endlist
\def\descriptionlabel#1{\hfil \it #1}
\def\description{\list{}{\leftmargin\descriptionmargin
 \labelwidth\leftmargin \advance\labelwidth -\labelsep
 \let\makelabel\descriptionlabel}}
\let\enddescription\endlist
\newdimen\descriptionmargin
\descriptionmargin=3em
\def\theequation{\arabic{equation}}
\arraycolsep 5pt \tabcolsep 6pt \arrayrulewidth .4pt \doublerulesep 2pt
\tabbingsep \labelsep
\skip\@mpfootins = \skip\footins
\fboxsep = 3pt \fboxrule = .4pt
\def\footnoterule{\kern-1\p@
 \hrule width .4\columnwidth
 \kern .6\p@}
\long\def\@makefntext#1{\noindent \hangindent 5pt\hbox
 to 5pt{\hss $^{\@thefnmark}$}#1}
\c@topnumber=2
\def\topfraction{.7}
\c@bottomnumber=1
\def\bottomfraction{.3}
\c@totalnumber=3
\def\textfraction{.2}
\def\floatpagefraction{.5}
\c@dbltopnumber= 2
\def\dbltopfraction{.7}
\def\dblfloatpagefraction{.5}
\def\today{\number\day.\ \ifcase\month\or
 January\or February\or March\or April\or May\or June\or
 July\or August\or September\or October\or November\or December\fi
 \space\number\year}
\def\heute{\number\day.\ \ifcase\month\or
 Januar\or Februar\or M\"arz\or April\or Mai\or Juni\or
 Juli\or August\or September\or Oktober\or November\or Dezember\fi
 \space\number\year}
\smallskipamount=.5\parskip \medskipamount=\parskip
\bigskipamount=2\parskip
\ps@plain \pagenumbering{arabic} \onecolumn \@fileswfalse
