| 1 | \NeedsTeXFormat{LaTeX2e} \ProvidesClass{newletter}
|
|---|
| 2 |
|
|---|
| 3 | \RequirePackage{ifthen}
|
|---|
| 4 | \newboolean{@german} \setboolean{@german}{false}
|
|---|
| 5 | \DeclareOption{german}{\setboolean{@german}{true}}
|
|---|
| 6 |
|
|---|
| 7 | \DeclareOption*{\PassOptionsToClass{\CurrentOption}{letter}}
|
|---|
| 8 | \ProcessOptions
|
|---|
| 9 | \LoadClass[a4paper]{letter}
|
|---|
| 10 |
|
|---|
| 11 | \newcommand{\@email}{}
|
|---|
| 12 | \newcommand{\@institute}{}
|
|---|
| 13 | \newcommand{\@street}{}
|
|---|
| 14 | \newcommand{\@city}{}
|
|---|
| 15 | \newcommand{\@tel}{}
|
|---|
| 16 | \newcommand{\@foot}{}
|
|---|
| 17 |
|
|---|
| 18 | \newcommand{\email}[1]{\renewcommand{\@email}{#1}}
|
|---|
| 19 | \newcommand{\institute}[1]{\renewcommand{\@institute}{#1}}
|
|---|
| 20 | \newcommand{\street}[1]{\renewcommand{\@street}{#1}}
|
|---|
| 21 | \newcommand{\city}[1]{\renewcommand{\@city}{#1}}
|
|---|
| 22 | \newcommand{\tel}[1]{\renewcommand{\@tel}{#1}}
|
|---|
| 23 | \newcommand{\foot}[1]{\renewcommand{\@foot}{#1}}
|
|---|
| 24 |
|
|---|
| 25 | \setlength{\textheight}{230mm}
|
|---|
| 26 | \setlength{\textwidth}{162mm}
|
|---|
| 27 | \setlength{\topmargin}{-50pt}
|
|---|
| 28 | \setlength{\oddsidemargin}{0pt}
|
|---|
| 29 | \setlength{\evensidemargin}{0pt}
|
|---|
| 30 | \setlength{\headheight}{12pt}
|
|---|
| 31 | \setlength{\headsep}{35pt}
|
|---|
| 32 |
|
|---|
| 33 | \newlength{\leftfield} \setlength{\leftfield}{118.5mm}
|
|---|
| 34 | \newlength{\rightfield} \setlength{\rightfield}{42.5mm}
|
|---|
| 35 |
|
|---|
| 36 | \DeclareFixedFont{\xviisf}{OT1}{cmss}{m}{n}{24.88}
|
|---|
| 37 | \DeclareFixedFont{\xsf}{OT1}{cmss}{m}{n}{10}
|
|---|
| 38 | \DeclareFixedFont{\viiisf}{OT1}{cmss}{m}{n}{8}
|
|---|
| 39 |
|
|---|
| 40 | \newcommand{\@place}{}
|
|---|
| 41 |
|
|---|
| 42 | \renewcommand{\date}[1]{\def\@date{#1}}
|
|---|
| 43 | \newcommand{\place}[1]{\renewcommand{\@place}{#1}}
|
|---|
| 44 |
|
|---|
| 45 | \renewcommand{\ps@firstpage}{
|
|---|
| 46 | \setlength{\headheight}{41pt}
|
|---|
| 47 | \setlength{\headsep}{25pt}
|
|---|
| 48 | \renewcommand{\@oddhead}{
|
|---|
| 49 | \parbox{\textwidth}{
|
|---|
| 50 | \raisebox{-6pt}{\parbox[t]{\leftfield}{
|
|---|
| 51 | \xviisf\@institute}}
|
|---|
| 52 | \raisebox{4pt}{\parbox[t]{\rightfield}{
|
|---|
| 53 | \viiisf\baselineskip10pt\fromname\\\@street\\\@city}}\\[3pt]
|
|---|
| 54 | \rule{\textwidth}{1pt}}}
|
|---|
| 55 | \renewcommand{\@oddfoot}{ %\ifthenelse{ \equal{\@foot}{} }{}{ %
|
|---|
| 56 | \raisebox{-10pt}[0pt]{
|
|---|
| 57 | \parbox{\textwidth}{
|
|---|
| 58 | \rule{\textwidth}{0.6pt}\\[2pt]
|
|---|
| 59 | \mbox{}\hfill
|
|---|
| 60 | \begin{tabular}[t]{p{5.5cm}}\@foot\end{tabular} }}} %}%
|
|---|
| 61 | \renewcommand{\@evenhead}{}
|
|---|
| 62 | \renewcommand{\@evenfoot}{}}
|
|---|
| 63 |
|
|---|
| 64 | \renewcommand{\opening}[1]{
|
|---|
| 65 | \thispagestyle{firstpage}
|
|---|
| 66 | \vspace*{24pt}
|
|---|
| 67 | \parbox[t]{\leftfield}{
|
|---|
| 68 | \underline{\footnotesize\itshape\@institute , \@street , \@city}\\
|
|---|
| 69 | \parbox[b][3.5cm][c]{\leftfield}{\begin{quote}
|
|---|
| 70 | \bfseries\toname\\ \toaddress\end{quote}}}
|
|---|
| 71 | \raisebox{15pt}{\parbox[t]{\rightfield}{
|
|---|
| 72 | \large\fromname\\ \@street\\ \@city\\
|
|---|
| 73 | \ifthenelse{\equal{\@tel}{}}{}{\@tel\\} \par
|
|---|
| 74 | \normalsize\slshape
|
|---|
| 75 | \ifthenelse{\equal{\@email}{}}{}{email: \sffamily\@email\\}}}
|
|---|
| 76 | \par
|
|---|
| 77 | \rule{\textwidth}{0.6pt}
|
|---|
| 78 | \makebox[\leftfield][l]{#1}
|
|---|
| 79 | \makebox[\rightfield][r]{
|
|---|
| 80 | \ifthenelse{\equal{\@place}{}}{M\"unchen, den}{\@place, } \@date}
|
|---|
| 81 | \vspace{2\parskip}\par\nobreak}
|
|---|
| 82 |
|
|---|
| 83 | \renewcommand{\@texttop}{}
|
|---|