%%
%% This is file `layout.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% layout.dtx (with options: `package')
%%
%% This is a generated file.
%%
%% The source is maintained by the LaTeX Project team and bug
%% reports for it can be opened at
https://latex-project.org/bugs/
%% (but please observe conditions on bug reports sent to that address!)
%%
%%
%% Copyright (C) 1993-2021
%% The LaTeX Project and any individual authors listed elsewhere
%% in this file.
%%
%% This file was generated from file(s) of the Standard LaTeX `Tools Bundle'.
%% --------------------------------------------------------------------------
%%
%% It may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
%% of this license or (at your option) any later version.
%% The latest version of this license is in
%%
https://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.
%%
%% This file may only be distributed together with a copy of the LaTeX
%% `Tools Bundle'. You may however distribute the LaTeX `Tools Bundle'
%% without such generated files.
%%
%% The list of all files belonging to the LaTeX `Tools Bundle' is
%% given in the file `manifest.txt'.
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{layout}
[2021-03-10 v1.2e Show layout parameters --- special version for TLC3]
\DeclareOption{dutch}{%
\def\Headertext{Kopregel}
\def\Bodytext{Broodtekst}
\def\Footertext{Voetregel}
\def\MarginNotestext{Marge\\Notities}
\def\oneinchtext{een inch}
\def\notshown{niet getoond}
}
\DeclareOption{german}{%
\def\Headertext{Kopfzeile}
\def\Bodytext{Haupttext}
\def\Footertext{Fu{\ss}zeile}
\def\MarginNotestext{Rand-\\ notizen}
\def\oneinchtext{ein Zoll}
\def\notshown{ohne Abbildung}
}
\DeclareOption{ngerman}{\ExecuteOptions{german}}
\DeclareOption{english}{%
\def\Headertext{Header}
\def\Bodytext{Body}
\def\Footertext{Footer}
\def\MarginNotestext{Margin\\Notes}
\def\oneinchtext{one inch}
\def\notshown{not shown}
}
\DeclareOption{french}{%
\def\Headertext{Ent\^{e}te}
\def\Bodytext{Corps}
\def\Footertext{Pied de page}
\def\MarginNotestext{Marge\\Notes}
\def\oneinchtext{un pouce}
\def\notshown{non affich\'{e}}
}
\DeclareOption{francais}{\ExecuteOptions{french}}
\DeclareOption{spanish}{%
\def\Headertext{Encabezamiento}
\def\Bodytext{Cuerpo}
\def\Footertext{Pie de p\'agina}
\def\MarginNotestext{Notas\\ Marginales}
\def\oneinchtext{una pulgada}
\def\notshown{no mostradas}
}
\DeclareOption{portuguese}{%
\def\Headertext{Cabe\c{c}alho}
\def\Bodytext{Corpo}
\def\Footertext{Rodap\'e}
\def\MarginNotestext{Notas\\ Marginais}
\def\oneinchtext{uma polegada}
\def\notshown{n\~ao mostradas}
}
\DeclareOption{brazilian}{%
\def\Headertext{Cabe\c{c}alho}
\def\Bodytext{Corpo}
\def\Footertext{Rodap\'e}
\def\MarginNotestext{Notas\\ Marginais}
\def\oneinchtext{uma polegada}
\def\notshown{n\~ao mostradas}
}
\DeclareOption{italian}{%
\def\Headertext{Testatina}
\def\Bodytext{Corpo}
\def\Footertext{Piedino}
\def\MarginNotestext{Note\\ Marginali}
\def\oneinchtext{un pollice}
\def\notshown{non mostrato}
}
\DeclareOption{romanian}{%
\def\Headertext{Antet}
\def\Bodytext{Corp}
\def\Footertext{Subsol}
\def\MarginNotestext{Note\\ Marginale}
\def\oneinchtext{un inch}
\def\notshown{neafi\textcommabelow sat}
}
\DeclareOption{japanese}{%
\def\Headertext{天}
\def\Bodytext{基本版面}
\def\Footertext{地}
\def\MarginNotestext{傍\\注}
\def\oneinchtext{1インチ}
\def\notshown{非表示}
}
\DeclareOption{verbose}{\let\LayOuttype\typeout}
\DeclareOption{silent}{\let\LayOuttype\@gobble}
\def\lay@value{}
\DeclareOption{integers}{%
\renewcommand*{\lay@value}[2]{%
\expandafter\number\csname #1@#2\endcsname pt}}
\DeclareOption{reals}{%
\renewcommand*{\lay@value}[2]{\the\csname #2\endcsname}}
\ExecuteOptions{english,silent,integers}
\ProcessOptions
\newcommand\LayOutbs{}
\chardef\LayOutbs`\\
\def\ConvertToCount#1#2{%
#1=#2
\divide #1 by 65536}
\def\SetToHalf#1#2{#1=#2\relax\divide#1by\tw@}
\def\SetToQuart#1#2{#1=#2\relax\divide#1by4}
\def\Identify#1{%
\put(\PositionX,\PositionY){\circle{20}}
\put(\PositionX,\PositionY){\makebox(0,0){\tiny #1}}
}
\def\InsideHArrow#1{{%
\ArrowLength = #1
\divide\ArrowLength by \tw@
\advance\ArrowLength by -10
\advance\PositionX by -10
\ifnum\ArrowLength<\z@
\put(\PositionX,\PositionY){\vector(1,0){-\ArrowLength}}
\advance\PositionX by 20
\put(\PositionX,\PositionY){\vector(-1,0){-\ArrowLength}}
\else
\put(\PositionX,\PositionY){\vector(-1,0){\ArrowLength}}
\advance\PositionX by 20
\put(\PositionX,\PositionY){\vector(+1,0){\ArrowLength}}
\fi
}}
\def\InsideVArrow#1{{%
\ArrowLength = #1
\divide\ArrowLength by \tw@
\advance\ArrowLength by -10
\advance\PositionY by -10
\put(\PositionX,\PositionY){\vector(0,-1){\ArrowLength}}
\advance\PositionY by 20
\put(\PositionX,\PositionY){\vector(0,+1){\ArrowLength}}
}}
\def\OutsideHArrow#1#2#3{{%
\PositionX = #1
\advance\PositionX by #3
\put(\PositionX,\PositionY){\vector(-1,0){#3}}
\PositionX = #1 \advance\PositionX-#2
\advance\PositionX by -#3
\put(\PositionX,\PositionY){\vector(+1,0){#3}}
}}
\def\OutsideVArrow#1#2#3#4{{%
\PositionY = #1
\advance\PositionY by -#3
\put(\PositionX,\PositionY){\vector(0,+1){#3}}
\PositionY = #1
\advance\PositionY#2
\advance\PositionY#4
\put(\PositionX,\PositionY){\vector(0,-1){#4}}
}}
\def\Show#1#2{\LayOutbs #2 = \lay@value{#1}{#2}}
\def\Type#1#2{%
\LayOuttype{#2 = \lay@value{#1}{#2}}}
\newcount\oneinch
\oneinch=72
\newcount\cnt@paperwidth
\newcount\cnt@paperheight
\ConvertToCount\cnt@paperwidth\paperwidth
\ConvertToCount\cnt@paperheight\paperheight
\newcount\cnt@hoffset
\newcount\cnt@voffset
\ConvertToCount\cnt@hoffset\hoffset
\ConvertToCount\cnt@voffset\voffset
\newcount\cnt@textheight
\newcount\cnt@textwidth
\newcount\cnt@topmargin
\newcount\cnt@oddsidemargin
\newcount\cnt@evensidemargin
\newcount\cnt@headheight
\newcount\cnt@headsep
\newcount\cnt@marginparsep
\newcount\cnt@marginparwidth
\newcount\cnt@marginparpush
\newcount\cnt@footskip
\newcount\fheight
\fheight=12
\newcount\ref@top
\ref@top=\cnt@paperheight \advance\ref@top by -\oneinch
\newcount\ref@hoffset
\newcount\ref@voffset
\ref@hoffset=\cnt@hoffset \advance\cnt@hoffset by \oneinch
\ref@voffset=\cnt@voffset
\cnt@voffset=\ref@top
\advance\cnt@voffset by -\ref@voffset
\newcount\ref@head
\newcount\ref@body
\newcount\ref@foot
\newcount\ref@margin
\newcount\ref@marginwidth
\newcount\ref@marginpar
\newcount\Interval
\newcount\ExtraYPos
\newcount\PositionX
\newcount\PositionY
\newcount\ArrowLength
\def\lay@getvalues{%
\ConvertToCount\cnt@textheight\textheight
\ConvertToCount\cnt@textwidth\textwidth
\ConvertToCount\cnt@topmargin\topmargin
\ConvertToCount\cnt@oddsidemargin\oddsidemargin
\ConvertToCount\cnt@evensidemargin\evensidemargin
\ConvertToCount\cnt@headheight\headheight
\ConvertToCount\cnt@headsep\headsep
\ConvertToCount\cnt@marginparsep\marginparsep
\ConvertToCount\cnt@marginparwidth\marginparwidth
\ConvertToCount\cnt@marginparpush\marginparpush
\ConvertToCount\cnt@footskip\footskip
\ref@head=\ref@top
\advance\ref@head by -\ref@voffset
\advance\ref@head by -\cnt@topmargin
\advance\ref@head by -\cnt@headheight
\ref@body=\ref@head
\advance\ref@body by -\cnt@headsep
\advance\ref@body by -\cnt@textheight
\ref@foot=\ref@body
\advance\ref@foot by -\cnt@footskip
}
\AtBeginDocument{\lay@getvalues}
\newcommand\layout{%
\@ifstar{\lay@getvalues\lay@xlayout}{\lay@xlayout}}
\def\lay@xlayout{%
\lay@layout
\if@twoside
\lay@layout
\fi}
\newcommand\lay@layout{%
\thispagestyle{empty}
\if@twoside
\ifodd\count\z@
\typeout{Two-sided document style, odd page.}
\ref@marginwidth=\cnt@oddsidemargin
\ref@marginpar=\oneinch
\advance\ref@marginpar by \ref@hoffset
\advance\ref@marginpar by \cnt@oddsidemargin
\ref@margin\ref@marginpar
\if@reversemargin
\advance\ref@marginpar by -\cnt@marginparsep
\advance\ref@marginpar by -\cnt@marginparwidth
\else
\advance\ref@marginpar by \cnt@textwidth
\advance\ref@marginpar by \cnt@marginparsep
\fi
\else
\typeout{Two-sided document style, even page.}
\ref@marginwidth=\cnt@evensidemargin
\ref@marginpar=\oneinch
\advance\ref@marginpar by \ref@hoffset
\advance\ref@marginpar by \cnt@evensidemargin
\ref@margin\ref@marginpar
\if@reversemargin
\advance\ref@marginpar by \cnt@textwidth
\advance\ref@marginpar by \cnt@marginparsep
\else
\advance\ref@marginpar by -\cnt@marginparsep
\advance\ref@marginpar by -\cnt@marginparwidth
\fi
\fi
\else
\typeout{One-sided document style.}
\ref@marginwidth=\cnt@oddsidemargin
\ref@marginpar=\oneinch
\advance\ref@marginpar by \ref@hoffset
\advance\ref@marginpar by \cnt@oddsidemargin
\ref@margin\ref@marginpar
\if@reversemargin
\advance\ref@marginpar by -\cnt@marginparsep
\advance\ref@marginpar by -\cnt@marginparwidth
\else
\advance\ref@marginpar by \cnt@textwidth
\advance\ref@marginpar by \cnt@marginparsep
\fi
\fi
\setlength{\unitlength}{.5pt}
\begin{picture}(\cnt@paperwidth,\cnt@paperheight)
\centering
\thicklines
\put(0,0){\framebox(\cnt@paperwidth,\cnt@paperheight){\mbox{}}}
\put(0,\cnt@voffset){\dashbox{10}(\cnt@paperwidth,0){\mbox{}}}
\put(\cnt@hoffset,0){\dashbox{10}(0,\cnt@paperheight){\mbox{}}}
\put(\ref@margin,\ref@head){%
\framebox(\cnt@textwidth,\cnt@headheight)%
{\footnotesize\Headertext}}
\put(\ref@margin,\ref@body){%
\framebox(\cnt@textwidth,\cnt@textheight){\Bodytext}}
\put(\ref@margin,\ref@foot){%
\framebox(\cnt@textwidth,\fheight){\footnotesize\Footertext}}
\put(\ref@marginpar,\ref@body){%
\framebox(\cnt@marginparwidth,\cnt@textheight)%
{\footnotesize\shortstack{\MarginNotestext}}}
\thinlines
\SetToHalf\PositionX\cnt@textwidth
\advance\PositionX by \ref@margin
\PositionY = \ref@body
\advance\PositionY by 50
\Identify{8}
\InsideHArrow\cnt@textwidth
\SetToHalf\PositionY\cnt@textheight
\advance\PositionY by \ref@body
\PositionX = \cnt@textwidth
\divide\PositionX by 5
\multiply \PositionX by 4
\advance\PositionX by \ref@margin
\Identify{7}
\InsideVArrow\cnt@textheight
\PositionY = 25
\SetToHalf\PositionX\cnt@hoffset
\Identify{1}
\InsideHArrow\cnt@hoffset
\SetToQuart\PositionY\cnt@textheight
\advance\PositionY by \ref@body
\ifnum\ref@marginwidth > 0
\OutsideHArrow\ref@margin\ref@marginwidth{20}
\PositionX = \cnt@hoffset
\else
\OutsideHArrow\cnt@hoffset{-\ref@marginwidth}{20}
\PositionX = \ref@margin
\fi
\advance\PositionX by -30
\Identify{3}
\SetToQuart\PositionY\cnt@textheight
\advance\PositionY by \ref@body
\advance\PositionY by 30
\SetToHalf\PositionX\cnt@marginparwidth
\advance\PositionX by \ref@marginpar
\Identify{10}
\InsideHArrow\cnt@marginparwidth
\advance\PositionY by 30
\if@twoside
\if@reversemargin
\ifodd\count\z@
\OutsideHArrow\ref@margin\cnt@marginparsep{20}
\PositionX = \ref@margin
\else
\OutsideHArrow\ref@marginpar\cnt@marginparsep{20}
\PositionX = \ref@marginpar
\fi
\else
\ifodd\count\z@
\OutsideHArrow\ref@marginpar\cnt@marginparsep{20}
\PositionX = \ref@marginpar
\else
\OutsideHArrow\ref@margin\cnt@marginparsep{20}
\PositionX = \ref@margin
\fi
\fi
\else
\if@reversemargin
\OutsideHArrow\ref@margin\cnt@marginparsep{20}
\PositionX = \ref@margin
\else
\OutsideHArrow\ref@marginpar\cnt@marginparsep{20}
\PositionX = \ref@marginpar
\fi
\fi
\advance\PositionX by -\cnt@marginparsep
\advance\PositionX by -30
\Identify{9}
\PositionX = \cnt@textwidth
\divide\PositionX by 8
\advance\PositionX by \ref@margin
\OutsideVArrow\ref@foot\cnt@footskip{20}{20}
\PositionY = \ref@foot
\advance\PositionY by \cnt@footskip
\advance\PositionY by 30
\Identify{11}
\PositionX = \cnt@paperwidth
\advance\PositionX by -50
\PositionY = \cnt@paperheight
\ExtraYPos = \PositionY
\advance\ExtraYPos by -\cnt@voffset
\advance\PositionY by \cnt@voffset
\divide\PositionY by \tw@
\Identify{2}
\InsideVArrow\ExtraYPos
\Interval = \cnt@textwidth
\divide\Interval by 8
\PositionX = \ref@margin
\advance\PositionX by \Interval
\ifnum\cnt@topmargin > \z@
\ExtraYPos = \ref@head
\advance\ExtraYPos\cnt@headheight
\OutsideVArrow\ExtraYPos\cnt@topmargin{20}{20}
\PositionY = \ExtraYPos
\advance\PositionY by \cnt@topmargin
\else
\ExtraYPos = \cnt@voffset
\OutsideVArrow\ExtraYPos{-\cnt@topmargin}{20}{20}
\PositionY = \ExtraYPos
\advance\PositionY by -\cnt@topmargin
\fi
\advance\PositionY by 30
\Identify{4}
\advance\PositionX by \Interval
\OutsideVArrow\ref@head\cnt@headheight{20}{20}
\PositionY = \ref@head
\advance\PositionY by \cnt@headheight
\advance\PositionY by 30
\Identify{5}
\advance\PositionX by \Interval
\ExtraYPos=\ref@body
\advance\ExtraYPos\cnt@textheight
\OutsideVArrow\ExtraYPos\cnt@headsep{20}{20}
\PositionY = \ref@body
\advance\PositionY by \cnt@textheight
\advance\PositionY by -30
\Identify{6}
\end{picture}
\medskip
\vtop to 0pt{%
\@minipagerestore\footnotesize\ttfamily
\begin{tabular}{@{}rl@{\hspace{20pt}}rl}
1 & \oneinchtext\ + \LayOutbs\texttt{hoffset}
& 2 & \oneinchtext\ + \LayOutbs\texttt{voffset} \\
3 & \if@twoside
\ifodd\count\z@ \Show{cnt}{oddsidemargin}
\else \Show{cnt}{evensidemargin}
\fi
\else
\Show{cnt}{oddsidemargin}
\fi & 4 & \Show{cnt}{topmargin} \\
5 & \Show{cnt}{headheight} & 6 & \Show{cnt}{headsep} \\
7 & \Show{cnt}{textheight} & 8 & \Show{cnt}{textwidth} \\
9 & \Show{cnt}{marginparsep}&10& \Show{cnt}{marginparwidth} \\
11& \Show{cnt}{footskip} & & \Show{cnt}{marginparpush}
\rlap{(\notshown)}\\
& \Show{ref}{hoffset} & & \Show{ref}{voffset} \\
& \Show{cnt}{paperwidth} & & \Show{cnt}{paperheight} \\
\end{tabular}\vss}
\Type{ref}{hoffset}
\Type{ref}{voffset}
\Type{cnt}{textheight}
\Type{cnt}{textwidth}
\newpage
}
\endinput
%%
%% End of file `layout.sty'.