% diary.cls % % (based on tcreport.cls by Rolf A. de By.) % % This style file was originally composed of several standard LaTeX style % files and additional public domain style files. % % article.cls % art12.clo (input automatically from article.cls) % fancyheadings.sty (Piet van Oostrom, RUU) % % Now, this is a remake for LaTeX2e \typeout{TransCoop LaTeX2e class by Rolf A. de By, September 16, 1994. Revised April 18th, 1995.} % ARTICLE.CLS \NeedsTeXFormat{LaTeX2e} \ProvidesClass{diary} [1994/09/16 v1.0s Customized LaTeX2e document class] \newcommand\@ptsize{} \newif\if@restonecol \newif\if@titlepage \@titlepagetrue \newif\if@openbib \@openbibfalse \DeclareOption{a4paper} {\setlength\paperheight {297mm}% \setlength\paperwidth {210mm}} \DeclareOption{a5paper} {\setlength\paperheight {210mm}% \setlength\paperwidth {148mm}} \DeclareOption{b5paper} {\setlength\paperheight {250mm}% \setlength\paperwidth {176mm}} \DeclareOption{letterpaper} {\setlength\paperheight {11in}% \setlength\paperwidth {8.5in}} \DeclareOption{legalpaper} {\setlength\paperheight {14in}% \setlength\paperwidth {8.5in}} \DeclareOption{executivepaper} {\setlength\paperheight {10.5in}% \setlength\paperwidth {7.25in}} \DeclareOption{landscape} {\setlength\@tempdima {\paperheight}% \setlength\paperheight {\paperwidth}% \setlength\paperwidth {\@tempdima}} \DeclareOption{10pt}{\renewcommand\@ptsize{0}} \DeclareOption{11pt}{\renewcommand\@ptsize{1}} \DeclareOption{12pt}{\renewcommand\@ptsize{2}} \DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse} \DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue} \DeclareOption{draft}{\setlength\overfullrule{5pt}} \DeclareOption{final}{\setlength\overfullrule{0pt}} %\DeclareOption{titlepage}{\@titlepagetrue} %\DeclareOption{notitlepage}{\@titlepagefalse} \DeclareOption{onecolumn}{\@twocolumnfalse} \DeclareOption{twocolumn}{\@twocolumntrue} \DeclareOption{leqno}{\input{leqno.clo}} \DeclareOption{fleqn}{\input{fleqn.clo}} \DeclareOption{openbib}{\@openbibtrue} %\ExecuteOptions{letterpaper,10pt,oneside,onecolumn,final} \ExecuteOptions{a4paper,12pt,twoside,onecolumn,final} \ProcessOptions \input{size1\@ptsize.clo} \setlength\lineskip{1\p@} \setlength\normallineskip{1\p@} \renewcommand\baselinestretch{} \setlength\parskip{0\p@ \@plus \p@} \@lowpenalty 51 \@medpenalty 151 \@highpenalty 301 \setcounter{topnumber}{2} \renewcommand\topfraction{.7} \setcounter{bottomnumber}{1} \renewcommand\bottomfraction{.3} \setcounter{totalnumber}{3} \renewcommand\textfraction{.2} \renewcommand\floatpagefraction{.5} \setcounter{dbltopnumber}{2} \renewcommand\dbltopfraction{.7} \renewcommand\dblfloatpagefraction{.5} \if@twoside \def\ps@headings{% \let\@oddfoot\@empty\let\@evenfoot\@empty \def\@evenhead{\thepage\hfil\slshape\leftmark}% \def\@oddhead{{\slshape\rightmark}\hfil\thepage}% \let\@mkboth\markboth \def\sectionmark##1{% \markboth {\uppercase{\ifnum \c@secnumdepth >\z@ \thesection.\hskip 1em\relax\fi ##1}}{}}% \def\subsectionmark##1{% \markright {\ifnum \c@secnumdepth >\@ne \thesubsection\hskip 1em\relax \fi ##1}}} \else \def\ps@headings{% \let\@oddfoot\@empty \def\@oddhead{{\slshape\rightmark}\hfil\thepage}% \let\@mkboth\markboth \def\sectionmark##1{% \markright {\uppercase{\ifnum \c@secnumdepth >\m@ne \thesection\hskip 1em\relax \fi ##1}}}} \fi \def\ps@myheadings{% \let\@oddfoot\@empty\let\@evenfoot\@empty \def\@evenhead{\thepage\hfil\slshape\leftmark}% \def\@oddhead{{\slshape\rightmark}\hfil\thepage}% \let\@mkboth\@gobbletwo \let\sectionmark\@gobble \let\subsectionmark\@gobble } \if@titlepage \newcommand\maketitle{\begin{titlepage}% \let\footnotesize\small \let\footnoterule\relax \null\vfil \vskip 60\p@ \begin{center}% {\LARGE \@title \par}% \vskip 3em% {\large \lineskip .75em% \begin{tabular}[t]{c}% \@author \end{tabular}\par}% \vskip 1.5em% {\large \@date \par}% % Set date in \large size. \end{center}\par \@thanks \vfil\null \end{titlepage}% \setcounter{footnote}{0}% \let\thanks\relax\let\maketitle\relax \gdef\@thanks{}\gdef\@author{}\gdef\@title{}} \else \newcommand\maketitle{\par \begingroup \renewcommand\thefootnote{\fnsymbol{footnote}}% \def\@makefnmark{\hbox to\z@{$\m@th^{\@thefnmark}$\hss}}% \long\def\@makefntext##1{\parindent 1em\noindent \hbox to1.8em{\hss$\m@th^{\@thefnmark}$}##1}% \if@twocolumn \ifnum \col@number=\@ne \@maketitle \else \twocolumn[\@maketitle]% \fi \else \newpage \global\@topnum\z@ % Prevents figures from going at top of page. \@maketitle \fi \thispagestyle{plain}\@thanks \endgroup \setcounter{footnote}{0}% \let\thanks\relax \let\maketitle\relax\let\@maketitle\relax \gdef\@thanks{}\gdef\@author{}\gdef\@title{}} \def\@maketitle{% \newpage \null \vskip 2em% \begin{center}% {\LARGE \@title \par}% \vskip 1.5em% {\large \lineskip .5em% \begin{tabular}[t]{c}% \@author \end{tabular}\par}% \vskip 1em% {\large \@date}% \end{center}% \par \vskip 1.5em} \fi \setcounter{secnumdepth}{3} \newcounter {part} \newcounter {section} \newcounter {subsection}[section] \newcounter {subsubsection}[subsection] \newcounter {paragraph}[subsubsection] \newcounter {subparagraph}[paragraph] \renewcommand\thepart {\Roman{part}} \renewcommand\thesection {\arabic{section}} \renewcommand\thesubsection {\thesection.\arabic{subsection}} \renewcommand\thesubsubsection {\thesubsection .\arabic{subsubsection}} \renewcommand\theparagraph {\thesubsubsection.\arabic{paragraph}} \renewcommand\thesubparagraph {\theparagraph.\arabic{subparagraph}} \newcommand\part{\par \addvspace{4ex}% \@afterindentfalse \secdef\@part\@spart} \def\@part[#1]#2{% \ifnum \c@secnumdepth >\m@ne \refstepcounter{part}% \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}% \else \addcontentsline{toc}{part}{#1}% \fi {\parindent \z@ \raggedright \interlinepenalty \@M \reset@font \ifnum \c@secnumdepth >\m@ne \Large\bfseries \partname~\thepart \par\nobreak \fi \huge \bfseries #2% \markboth{}{}\par}% \nobreak \vskip 3ex \@afterheading} \def\@spart#1{% {\parindent \z@ \raggedright \interlinepenalty \@M \reset@font \huge \bfseries #1\par}% \nobreak \vskip 3ex \@afterheading} \def\@endpart{\vfil\newpage \if@twoside \hbox{}% \thispagestyle{empty}% \newpage \fi \if@tempswa \twocolumn \fi} \newcommand\section{\@startsection {section}{1}{\z@}% {-3.5ex \@plus -1ex \@minus -.2ex}% {2.3ex \@plus.2ex}% {\reset@font\Large\bfseries}} \newcommand\subsection{\@startsection{subsection}{2}{\z@}% {-3.25ex\@plus -1ex \@minus -.2ex}% {1.5ex \@plus .2ex}% {\reset@font\large\bfseries}} \newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% {-3.25ex\@plus -1ex \@minus -.2ex}% {1.5ex \@plus .2ex}% {\reset@font\normalsize\bfseries}} \newcommand\paragraph{\@startsection{paragraph}{4}{\z@}% {3.25ex \@plus1ex \@minus.2ex}% {-1em}% {\reset@font\normalsize\bfseries}} \newcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}% {3.25ex \@plus1ex \@minus .2ex}% {-1em}% {\reset@font\normalsize\bfseries}} \if@twocolumn \setlength\leftmargini {2em} \else \setlength\leftmargini {2.5em} \fi \setlength\leftmarginii {2.2em} \setlength\leftmarginiii {1.87em} \setlength\leftmarginiv {1.7em} \if@twocolumn \setlength\leftmarginv {.5em} \setlength\leftmarginvi {.5em} \else \setlength\leftmarginv {1em} \setlength\leftmarginvi {1em} \fi \setlength\leftmargin {\leftmargini} \setlength \labelsep {.5em} \setlength \labelwidth{\leftmargini} \addtolength\labelwidth{-\labelsep} \@beginparpenalty -\@lowpenalty \@endparpenalty -\@lowpenalty \@itempenalty -\@lowpenalty \renewcommand\theenumi{\arabic{enumi}} \renewcommand\theenumii{\alph{enumii}} \renewcommand\theenumiii{\roman{enumiii}} \renewcommand\theenumiv{\Alph{enumiv}} \newcommand\labelenumi{\theenumi.} \newcommand\labelenumii{(\theenumii)} \newcommand\labelenumiii{\theenumiii.} \newcommand\labelenumiv{\theenumiv.} \renewcommand\p@enumii{\theenumi} \renewcommand\p@enumiii{\theenumi(\theenumii)} \renewcommand\p@enumiv{\p@enumiii\theenumiii} \newcommand\labelitemi{$\m@th\bullet$} \newcommand\labelitemii{\normalfont\bfseries --} \newcommand\labelitemiii{$\m@th\ast$} \newcommand\labelitemiv{$\m@th\cdot$} \newenvironment{description} {\list{}{\labelwidth\z@ \itemindent-\leftmargin \let\makelabel\descriptionlabel}} {\endlist} \newcommand\descriptionlabel[1]{\hspace\labelsep \normalfont\bfseries #1} \if@titlepage \newenvironment{abstract}{% \titlepage \null\vfil \begin{center} \bfseries \abstractname \end{center}} {\par\vfil\null\endtitlepage} \else \newenvironment{abstract}{% \if@twocolumn \section*{\abstractname}% \else \small \begin{center}% {\bfseries \abstractname\vspace{-.5em}\vspace{\z@}}% \end{center}% \quotation \fi} {\if@twocolumn\else\endquotation\fi} \fi \newenvironment{verse} {\let\\=\@centercr \list{}{\itemsep \z@ \itemindent -1.5em% \listparindent\itemindent \rightmargin \leftmargin \advance\leftmargin 1.5em}% \item[]} {\endlist} \newenvironment{quotation} {\list{}{\listparindent 1.5em% \itemindent \listparindent \rightmargin \leftmargin \parsep \z@ \@plus\p@}% \item[]} {\endlist} \newenvironment{quote} {\list{}{\rightmargin\leftmargin}% \item[]} {\endlist} \newenvironment{titlepage} {% \if@twocolumn \@restonecoltrue\onecolumn \else \@restonecolfalse\newpage \fi \thispagestyle{empty}% \if@compatibility \setcounter{page}{0} \else \setcounter{page}{1}% \fi}% {\if@restonecol\twocolumn \else \newpage \fi \setcounter{page}{1}% } \newcommand\appendix{\par \setcounter{section}{0}% \setcounter{subsection}{0}% \renewcommand\thesection{\Alph{section}}} \setlength\arraycolsep{5\p@} \setlength\tabcolsep{6\p@} \setlength\arrayrulewidth{.4\p@} \setlength\doublerulesep{2\p@} \setlength\tabbingsep{\labelsep} \skip\@mpfootins = \skip\footins \setlength\fboxsep{3\p@} \setlength\fboxrule{.4\p@} \renewcommand\theequation{\arabic{equation}} \newcounter{figure} \renewcommand\thefigure{\@arabic\c@figure} \def\fps@figure{tbp} \def\ftype@figure{1} \def\ext@figure{lof} \def\fnum@figure{\figurename~\thefigure} \newenvironment{figure} {\@float{figure}} {\end@float} \newenvironment{figure*} {\@dblfloat{figure}} {\end@dblfloat} \newcounter{table} \renewcommand\thetable{\@arabic\c@table} \def\fps@table{tbp} \def\ftype@table{2} \def\ext@table{lot} \def\fnum@table{\tablename~\thetable} \newenvironment{table} {\@float{table}} {\end@float} \newenvironment{table*} {\@dblfloat{table}} {\end@dblfloat} \newlength\abovecaptionskip \newlength\belowcaptionskip \setlength\abovecaptionskip{10\p@} \setlength\belowcaptionskip{0\p@} \long\def\@makecaption#1#2{% \vskip\abovecaptionskip \sbox\@tempboxa{#1: #2}% \ifdim \wd\@tempboxa >\hsize #1: #2\par \else \hbox to\hsize{\hfil\box\@tempboxa\hfil}% \fi \vskip\belowcaptionskip} \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} \DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} \DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} %\renewcommand{\cal}{\protect\pcal} %\newcommand{\pcal}{\@fontswitch{\relax}{\mathcal}} %\renewcommand{\mit}{\protect\pmit} %\newcommand{\pmit}{\@fontswitch{\relax}{\mathnormal}} \newcommand\@pnumwidth{1.55em} \newcommand\@tocrmarg {2.55em} \newcommand\@dotsep{4.5} \setcounter{tocdepth}{3} \newcommand\tableofcontents{% \section*{\contentsname \@mkboth{\uppercase{\contentsname}}{\uppercase{\contentsname}}}% \@starttoc{toc}% } \newcommand\l@part[2]{% \ifnum \c@tocdepth >-2\relax \addpenalty{\@secpenalty}% \addvspace{2.25em \@plus\p@}% \begingroup \setlength\@tempdima{3em}% \parindent \z@ \rightskip \@pnumwidth \parfillskip -\@pnumwidth {\leavevmode \large \bfseries #1\hfil \hbox to\@pnumwidth{\hss #2}}\par \nobreak \if@compatibility \global\@nobreaktrue \everypar{\global\@nobreakfalse\everypar{}} \fi \endgroup \fi} \newcommand\l@section[2]{% \ifnum \c@tocdepth >\z@ \addpenalty{\@secpenalty}% \addvspace{1.0em \@plus\p@}% \setlength\@tempdima{1.5em}% \begingroup \parindent \z@ \rightskip \@pnumwidth \parfillskip -\@pnumwidth \leavevmode \bfseries \advance\leftskip\@tempdima \hskip -\leftskip #1\nobreak\hfil \nobreak\hbox to\@pnumwidth{\hss #2}\par \endgroup \fi} \newcommand\l@subsection {\@dottedtocline{2}{1.5em}{2.3em}} \newcommand\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}} \newcommand\l@paragraph {\@dottedtocline{4}{7.0em}{4.1em}} \newcommand\l@subparagraph {\@dottedtocline{5}{10em}{5em}} \newcommand\listoffigures{% \section*{\listfigurename \@mkboth{\uppercase{\listfigurename}}% {\uppercase{\listfigurename}}}% \@starttoc{lof}% } \newcommand\l@figure{\@dottedtocline{1}{1.5em}{2.3em}} \newcommand\listoftables{% \section*{\listtablename \@mkboth{\uppercase{\listtablename}}{\uppercase{\listtablename}}}% \@starttoc{lot}% } \let\l@table\l@figure \newdimen\bibindent \bibindent=1.5em \newenvironment{thebibliography}[1] {\section*{\refname \@mkboth{\uppercase{\refname}}{\uppercase{\refname}}}% \list{\@biblabel{\arabic{enumiv}}}% {\settowidth\labelwidth{\@biblabel{#1}}% \leftmargin\labelwidth \advance\leftmargin\labelsep \if@openbib \advance\leftmargin\bibindent \itemindent -\bibindent \listparindent \itemindent \parsep \z@ \fi \usecounter{enumiv}% \let\p@enumiv\@empty \renewcommand\theenumiv{\arabic{enumiv}}}% \if@openbib \renewcommand\newblock{\par} \else \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}% \fi \sloppy\clubpenalty4000\widowpenalty4000% \sfcode`\.=\@m} {\def\@noitemerr {\@latex@warning{Empty `thebibliography' environment}}% \endlist} \newcommand\newblock{} \newenvironment{theindex} {\if@twocolumn \@restonecolfalse \else \@restonecoltrue \fi \columnseprule \z@ \columnsep 35\p@ \twocolumn[\section*{\indexname}]% \@mkboth{\uppercase{\indexname}}% {\uppercase{\indexname}}% \parindent\z@ \parskip\z@ \@plus .3\p@\relax \let\item\@idxitem} {\if@restonecol\onecolumn\else\clearpage\fi} \newcommand\@idxitem {\par\hangindent 40\p@} \newcommand\subitem {\par\hangindent 40\p@ \hspace*{20\p@}} \newcommand\subsubitem{\par\hangindent 40\p@ \hspace*{30\p@}} \newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax} \renewcommand\footnoterule{% \kern-3\p@ \hrule width .4\columnwidth \kern 2.6\p@} \long\def\@makefntext#1{% \parindent 1em% \noindent \hbox to 1.8em{\hss\@makefnmark}#1} \newcommand\contentsname{Contents} \newcommand\listfigurename{List of Figures} \newcommand\listtablename{List of Tables} \newcommand\refname{References} \newcommand\indexname{Index} \newcommand\figurename{Figure} \newcommand\tablename{Table} \newcommand\partname{Part} \newcommand\appendixname{Appendix} \newcommand\abstractname{Abstract} \newcommand\today{\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\day, \number\year} \setlength\columnsep{10\p@} \setlength\columnseprule{0\p@} \pagestyle{plain} \pagenumbering{arabic} % Arabic page numbers \if@twoside \else \raggedbottom \fi \if@twocolumn \twocolumn \sloppy \flushbottom \else \onecolumn \fi % BEGIN FANCYHEADINGS.STY \def\lhead{\@ifnextchar[{\@xlhead}{\@ylhead}} \def\@xlhead[#1]#2{\gdef\@elhead{#1}\gdef\@olhead{#2}} \def\@ylhead#1{\gdef\@elhead{#1}\gdef\@olhead{#1}} \def\chead{\@ifnextchar[{\@xchead}{\@ychead}} \def\@xchead[#1]#2{\gdef\@echead{#1}\gdef\@ochead{#2}} \def\@ychead#1{\gdef\@echead{#1}\gdef\@ochead{#1}} \def\rhead{\@ifnextchar[{\@xrhead}{\@yrhead}} \def\@xrhead[#1]#2{\gdef\@erhead{#1}\gdef\@orhead{#2}} \def\@yrhead#1{\gdef\@erhead{#1}\gdef\@orhead{#1}} \def\lfoot{\@ifnextchar[{\@xlfoot}{\@ylfoot}} \def\@xlfoot[#1]#2{\gdef\@elfoot{#1}\gdef\@olfoot{#2}} \def\@ylfoot#1{\gdef\@elfoot{#1}\gdef\@olfoot{#1}} \def\cfoot{\@ifnextchar[{\@xcfoot}{\@ycfoot}} \def\@xcfoot[#1]#2{\gdef\@ecfoot{#1}\gdef\@ocfoot{#2}} \def\@ycfoot#1{\gdef\@ecfoot{#1}\gdef\@ocfoot{#1}} \def\rfoot{\@ifnextchar[{\@xrfoot}{\@yrfoot}} \def\@xrfoot[#1]#2{\gdef\@erfoot{#1}\gdef\@orfoot{#2}} \def\@yrfoot#1{\gdef\@erfoot{#1}\gdef\@orfoot{#1}} \newdimen\headrulewidth \newdimen\footrulewidth \newdimen\plainheadrulewidth \newdimen\plainfootrulewidth \newdimen\headwidth \newif\if@fancyplain \@fancyplainfalse \def\fancyplain#1#2{\if@fancyplain#1\else#2\fi} % Initialization of the head and foot text. \headrulewidth 0.4pt \footrulewidth\z@ \plainheadrulewidth\z@ \plainfootrulewidth\z@ \lhead[\fancyplain{}{\sl\rightmark}]{\fancyplain{}{\sl\leftmark}} % i.e. empty on ``plain'' pages \rightmark on even, \leftmark on odd pages \chead{} \rhead[\fancyplain{}{\sl\leftmark}]{\fancyplain{}{\sl\rightmark}} % i.e. empty on ``plain'' pages \leftmark on even, \rightmark on odd pages \lfoot{} \cfoot{\rm\thepage} % page number \rfoot{} % Put together a header or footer given the left, center and % right text, fillers at left and right and a rule. % The \lap commands put the text into an hbox of zero size, % so overlapping text does not generate an errormessage. \def\@fancyhead#1#2#3#4#5{#1\hbox to\headwidth{\vbox{\hbox {\rlap{\parbox[t]{\headwidth}{\raggedright#2\strut}}\hfill \parbox[t]{\headwidth}{\centering#3\strut}\hfill \llap{\parbox[t]{\headwidth}{\raggedleft#4\strut}}}\headrule}}#5} \def\@fancyfoot#1#2#3#4#5{#1\hbox to\headwidth{\vbox{\footrule \hbox{\rlap{\parbox[t]{\headwidth}{\raggedright#2\strut}}\hfill \parbox[t]{\headwidth}{\centering#3\strut}\hfill \llap{\parbox[t]{\headwidth}{\raggedleft#4\strut}}}}}#5} \def\headrule{{\if@fancyplain\headrulewidth\plainheadrulewidth\fi \vskip10pt \hrule\@height\headrulewidth\@width\headwidth \vskip-\headrulewidth}} \def\footrule{{\if@fancyplain\footrulewidth\plainfootrulewidth\fi \vskip-0.3\normalbaselineskip\vskip-\footrulewidth \hrule\@width\headwidth\@height\footrulewidth\vskip0.3\normalbaselineskip}} \def\ps@fancy{ \let\@mkboth\markboth \@ifundefined{chapter}{\def\sectionmark##1{\markboth {\uppercase{\ifnum \c@secnumdepth>\z@ \thesection\hskip 1em\relax \fi ##1}}{}} \def\subsectionmark##1{\markright {\ifnum \c@secnumdepth >\@ne \thesubsection\hskip 1em\relax \fi ##1}}} {\def\chaptermark##1{\markboth {\uppercase{\ifnum \c@secnumdepth>\m@ne \@chapapp\ \thechapter. \ \fi ##1}}{}} \def\sectionmark##1{\markright{\uppercase{\ifnum \c@secnumdepth >\z@ \thesection. \ \fi ##1}}}} \def\@oddhead{\@fancyhead\relax\@olhead\@ochead\@orhead\hss} \def\@oddfoot{\@fancyfoot\relax\@olfoot\@ocfoot\@orfoot\hss} \def\@evenhead{\@fancyhead\hss\@elhead\@echead\@erhead\relax} \def\@evenfoot{\@fancyfoot\hss\@elfoot\@ecfoot\@erfoot\relax} \headwidth\textwidth} \def\ps@fancyplain{\ps@fancy \let\ps@plain\ps@plain@fancy} \def\ps@plain@fancy{\@fancyplaintrue\ps@fancy} % END FANCYHEADINGS.STY % BEGIN EPSFFILE.STY \newread\epsffilein % file to \read \newif\ifepsffileok % continue looking for the bounding box? \newif\ifepsfbbfound % success? \newif\ifepsfverbose % report what you're making? \newdimen\epsfxsize % horizontal size after scaling \newdimen\epsfysize % vertical size after scaling \newdimen\epsftsize % horizontal size before scaling \newdimen\epsfrsize % vertical size before scaling \newdimen\epsftmp % register for arithmetic manipulation \newdimen\pspoints % conversion factor % \pspoints=1bp % Adobe points are `big' \epsfxsize=0pt % Default value, means `use natural size' \epsfysize=0pt % ditto % \def\epsfbox#1{\global\def\epsfllx{72}\global\def\epsflly{72}% \global\def\epsfurx{540}\global\def\epsfury{720}% \def\lbracket{[}\def\testit{#1}\ifx\testit\lbracket \let\next=\epsfgetlitbb\else\let\next=\epsfnormal\fi\next{#1}}% % \def\epsfgetlitbb#1#2 #3 #4 #5]#6{\epsfgrab #2 #3 #4 #5 .\\% \epsfsetgraph{#6}}% % \def\epsfnormal#1{\epsfgetbb{#1}\epsfsetgraph{#1}}% % \def\epsfgetbb#1{% % % The first thing we need to do is to open the % PostScript file, if possible. % \openin\epsffilein=#1 \ifeof\epsffilein\errmessage{I couldn't open #1, will ignore it}\else % % Okay, we got it. Now we'll scan lines until we find one that doesn't % start with %. We're looking for the bounding box comment. % {\epsffileoktrue \chardef\other=12 \def\do##1{\catcode`##1=\other}\dospecials \catcode`\ =10 \loop \read\epsffilein to \epsffileline \ifeof\epsffilein\epsffileokfalse\else % % We check to see if the first character is a % sign; % if not, we stop reading (unless the line was entirely blank); % if so, we look further and stop only if the line begins with % `%%BoundingBox:'. % \expandafter\epsfaux\epsffileline:. \\% \fi \ifepsffileok\repeat \ifepsfbbfound\else \ifepsfverbose\message{No bounding box comment in #1; using defaults}\fi\fi }\closein\epsffilein\fi}% % % Now we have to calculate the scale and offset values to use. % First we compute the natural sizes. % \def\epsfsetgraph#1{% \epsfrsize=\epsfury\pspoints \advance\epsfrsize by-\epsflly\pspoints \epsftsize=\epsfurx\pspoints \advance\epsftsize by-\epsfllx\pspoints % % If `epsfxsize' is 0, we default to the natural size of the picture. % Otherwise we scale the graph to be \epsfxsize wide. % \epsfxsize\epsfsize\epsftsize\epsfrsize \ifnum\epsfxsize=0 \ifnum\epsfysize=0 \epsfxsize=\epsftsize \epsfysize=\epsfrsize % % We have a sticky problem here: TeX doesn't do floating point arithmetic! % Our goal is to compute y = rx/t. The following loop does this reasonably % fast, with an error of at most about 16 sp (about 1/4000 pt). % \else\epsftmp=\epsftsize \divide\epsftmp\epsfrsize \epsfxsize=\epsfysize \multiply\epsfxsize\epsftmp \multiply\epsftmp\epsfrsize \advance\epsftsize-\epsftmp \epsftmp=\epsfysize \loop \advance\epsftsize\epsftsize \divide\epsftmp 2 \ifnum\epsftmp>0 \ifnum\epsftsize<\epsfrsize\else \advance\epsftsize-\epsfrsize \advance\epsfxsize\epsftmp \fi \repeat \fi \else\epsftmp=\epsfrsize \divide\epsftmp\epsftsize \epsfysize=\epsfxsize \multiply\epsfysize\epsftmp \multiply\epsftmp\epsftsize \advance\epsfrsize-\epsftmp \epsftmp=\epsfxsize \loop \advance\epsfrsize\epsfrsize \divide\epsftmp 2 \ifnum\epsftmp>0 \ifnum\epsfrsize<\epsftsize\else \advance\epsfrsize-\epsftsize \advance\epsfysize\epsftmp \fi \repeat \fi % % Finally, we make the vbox and stick in a \special that dvips can parse. % \ifepsfverbose\message{#1: width=\the\epsfxsize, height=\the\epsfysize}\fi \epsftmp=10\epsfxsize \divide\epsftmp\pspoints \vbox to\epsfysize{\vfil\hbox to\epsfxsize{% \special{PSfile=#1 llx=\epsfllx\space lly=\epsflly\space urx=\epsfurx\space ury=\epsfury\space rwi=\number\epsftmp}% \hfil}}% \epsfxsize=0pt\epsfysize=0pt}% % % We still need to define the tricky \epsfaux macro. This requires % a couple of magic constants for comparison purposes. % {\catcode`\%=12 \global\let\epsfpercent=%\global\def\epsfbblit{%BoundingBox}}% % % So we're ready to check for `%BoundingBox:' and to grab the % values if they are found. % \long\def\epsfaux#1#2:#3\\{\ifx#1\epsfpercent \def\testit{#2}\ifx\testit\epsfbblit \epsfgrab #3 . . . \\% \epsffileokfalse \global\epsfbbfoundtrue \fi\else\ifx#1\par\else\epsffileokfalse\fi\fi}% % % Here we grab the values and stuff them in the appropriate definitions. % \def\epsfgrab #1 #2 #3 #4 #5\\{% \global\def\epsfllx{#1}\ifx\epsfllx\empty \epsfgrab #2 #3 #4 #5 .\\\else \global\def\epsflly{#2}% \global\def\epsfurx{#3}\global\def\epsfury{#4}\fi}% % % We default the epsfsize macro. % \def\epsfsize#1#2{\epsfxsize} % % Finally, another definition for compatibility with older macros. % \let\epsffile=\epsfbox % RdB: Additional in-one-go macro: \newcommand{\epsfigureP}[5] {\begin{figure}[#5] \begin{center} \leavevmode \setlength{\epsfxsize}{#2\hsize} \centerline{\epsfbox{#1}} \caption{#3} \label{#4} \end{center} \end{figure}} % END EPSFFILE.STY %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % INITIALISATIONS % % *** PAGE DIMENSIONS % distance from top of paper to text is 1.2cm (default = 2.54) \topmargin=-1.24cm % text lines are 17cm long, centered on the page by default \textwidth=17cm \oddsidemargin=-0.54cm \evensidemargin=-0.54cm % 2.5cm margin for twosided documents \if@twoside \oddsidemargin=-0.04cm \evensidemargin=-1.04cm \fi % the textheight (by experiment) \textheight=24cm % TransCoop requires a rather large header (a too small number gives overfull % vboxes; 45.27pt is determined by experimenting) \headheight=22pt % space between header and the body text is 5mm \headsep=5mm % paragraphs are not indented and separated by one empty line (ugly!) % make the parskip flexible so that pagebreaks can be found easily % \parindent 0pt % \parskip 14.5pt plus 2pt minus 8pt % *** HEADERS *** % TransCoop headers are thicker than normal \headrulewidth 1pt \footrulewidth 1pt % for copyright notice at the bottom of the page \def\@copyright{} \def\Copyright#1{\gdef\@copyright{#1}} % left, center and right fields of the heading % RdB Try this out for non-overlapping centre heads: %\newdimen\@whatsleft % %\def\@setboxleft{\setbox0=\hbox{~\@filingcode~\LARGE~\bf~TransCoop~} %\@whatsleft=\textwidth\advance\@whatsleft by-\wd0} %\lhead{{\@filingcode}\\ % {\@dateofissue}} %\chead{\@setboxleft\parbox[t]{\@whatsleft}{\centering\normalsize\rm \@title}} %\rhead{{\LARGE \bf TransCoop}\\ % {\scriptsize EP 8012\ \ \ \ \ \ \ \ \ }} % extra spaces for `centering' \lhead{{}} \chead{{On-line diary}} \rhead{{}} % left and center fields of the footing \lfoot{{\scriptsize\it Copyright \copyright\ F.J.\ Faase}} \cfoot{{\scriptsize\rm Page\ \thepage}} % use the fancy pagestyle \pagestyle{fancy} \endinput %