% Makra pro inzertni p��lohu �asopisu Dotek
% Petr Ol��k

%%% Dokumentace je na konci souboru za \endinput

%%% De�ifrov�n� ��sla a ro�n�ku

\def\endash{--}
{\catcode`\_=12
\gdef\desifruj #1_#2#3#4#5;{
   \edef\rocnik{20#2#3}
   \edef\cislo{\if0#4\else#4\fi#5}}}
\newlinechar=10
\expandafter \desifruj \jobname;
\edef\zcislo{\cislo}
\edef\mesic{\cislo}
\ifnum\cislo=7 \def\cislo{7\endash8}\def\zcislo{78}\def\mesic{7}\fi
\message{*********** Ro�n�k: \rocnik, ��slo: \cislo\space *************^^J}

%%% Obr�zky

\input epsf

%%% Fonty

\input ofs [sdynamo,sserap,stitul,a35] \nofontmessages 
\setfonts              [DynaGroteskLC/9]
\fontdef\titfont       [DynaGroteskLC-bf/12]
\fontdef\btitfont      [DynaGroteskDC-bf/12]
\fontdef\kalendfont    [DynaGroteskD-rm/11]
\fontdef\kalendbffont  [DynaGroteskD-bf/11]
\fontdef\kalendsmfont  [DynaGroteskD-rm/9]
\fontdef\normalfont    [DynaGroteskLC-rm/9]
\fontdef\pagenofont    [Serapion-rm/10]
\fontdef\leftheadfont  [Serapion-it/10]
\fontdef\rightheadfont [DynaGroteskDXE-rm/16]
\fontdef\numberfont    [Alcoholica-rm/8]
\fontdef\zapfont       [ZapfDingbats-rm/9]
\fontdef\smallzapfont  [ZapfDingbats-rm/5]
\fontdef\cropmarkfont  [Courier/10]
\font\dotekfont=dotek at180pt

%%% Glob�ln� nastaven�

\chyph
\exhyphenpenalty=10000
\hsize=12cm \vsize=17.5cm
\rightskip=0pt plus 2em
\parindent=0pt
\baselineskip=11pt
\lineskiplimit=-40pt
\newdimen\logowidth
\logowidth=13mm
\newdimen\pindent \pindent=10pt  % indent of \px etc.
\newdimen\pagew   \pagew=148mm
\newdimen\pageh   \pageh=210mm   % A5 dimensions
\newdimen\colsep  \colsep=6mm    % horiz. mezera mezi sloupci 

%%% Pomocn� makra

\def\ifnextchar #1#2#3{\let\testchar= #1\def\bodyA{#2}\def\bodyB{#3}%
   \futurelet\next \runbody}
\def\runbody {\ifx \next\testchar 
   \expandafter\bodyA \else \expandafter\bodyB \fi}
\def\setgray#1{\special{ps: #1 setgray}}
\def\pstransform#1#2{\hbox to0pt{\special{ps:gsave 
  currentpoint currentpoint translate #1 neg exch neg exch translate}%
  #2\hss\special{ps:grestore}}}
\newread\testin 
\def\softinput #1 {\let\next=\relax \openin\testin=#1
  \ifeof\testin \message{Warning: the file #1 does not exist}%
  \else \closein\testin \def\next{\input #1 }\fi
  \next}  
\def\hbz{\hbox to0pt}  \def\vbz{\vbox to0pt}


%%% Multicolumn (inspirov�no podle TBN, str. 244)

\newcount\tempnum             % pracovn� prom�nn�
\def\roundtolines #1{%% zaokrouhl� na cel� n�sobky vel. ��dku
   \divide #1 by\baselineskip \multiply #1 by\baselineskip}
\def\corrsize #1{%% #1 := #1 + \splittopskip - \topskip
   \advance #1 by \splittopskip \advance #1 by-\topskip}
\edef\endmark{1}
\newif\iflastpage
\def\begmulti #1 {\par\bigskip\penalty0 \def\Ncols{#1}
   \splittopskip=\baselineskip
   \setbox0=\vbox\bgroup\penalty0
   %% \hsize := ���ka sloupce = (\hsize+\colsep) / n - \colsep
   \advance\hsize by\colsep
   \divide\hsize by\Ncols  \advance\hsize by-\colsep}
\def\endmulti{\vfil\egroup \setbox1=\vsplit0 to0pt
   %% \dimen1 := velikost zbyl�ho m�sta na str�nce
   \ifdim\pagegoal=\maxdimen \dimen1=\vsize \corrsize{\dimen1}
   \else \dimen1=\pagegoal \advance\dimen1 by-\pagetotal \fi
   \ifdim \dimen1<2\baselineskip
     \vfil\break \dimen1=\vsize \corrsize{\dimen1} \fi
   %% \dimen0 := v��ka n sloupcov� sazby po rozd�len� do sloupc�
   %% = (\ht0 + (n-1)\baselineskip) / n, zaokruhleno na ��dky
   \dimen0=\Ncols\baselineskip \advance\dimen0 by-\baselineskip
   \advance\dimen0 by \ht0 \divide\dimen0 by\Ncols
   \roundtolines{\dimen0}
   %% Rozd�lit sazbu n sloupc� do str�nek nebo nerozd�lit ?
   \ifdim \dimen0>\dimen1 \expandafter \zpracujsloupce  
   \else \balancujstranu1 \vypuststranu1 \fi
   \ifvoid0 \else \message{ztracen� text ve sloupc�ch?} \fi
   \bigskip}
\def\zpracujsloupce{% musime nacist i protejsi stranu aby marks odpoovidaly
  \lastpagefalse    % kompletni dvoustrane
  \ifodd\pageno
     \ifdim \dimen0>\dimen1 \naplnstranu1 \vypuststranu1 
     \else                  \balancujstranu1 \vypuststranu1 \lastpagetrue
     \fi 
  \else
     \ifdim \dimen0>\dimen1 \naplnstranu1 \premerstranu
                            \ifdim \dimen0>\dimen1 \naplnstranu2
                            \else                  \balancujstranu2 \lastpagetrue
                            \fi
                            \vypuststranu1 \break \vypuststranu2
     \else                  \balancujstranu1 \vypuststranu1 \lastpagetrue
     \fi
  \fi
  \iflastpage \ifvoid0 \else \message{ztracen� text ve sloupc�ch?} \fi
  \else       \break \premerstranu \expandafter \zpracujsloupce \fi}

\def\naplnstranu#1{\makecolumns{\dimen1}#1}
\def\balancujstranu#1{\ifvoid0 \else \makecolumns{\dimen0}#1 \fi}
\def\vypuststranu#1{\ifvoid#1 \else \hbox{}\nobreak\vskip-\splittopskip \nointerlineskip
   \line{\unhbox#1\unskip}\vskip0pt plus1fil minus10pt \fi}
\def\premerstranu{\dimen1=\vsize
   \dimen0=\Ncols\baselineskip \advance\dimen0 by-\baselineskip
   \advance\dimen0 by \ht0 \divide\dimen0 by\Ncols}
\def\makecolumns#1#2{\setbox#2=\hbox{}\tempnum=0
   \loop \ifnum\Ncols>\tempnum
      \setbox#2=\hbox{\unhbox#2 \vsplit0 to#1 \hss}
      \ifnum\tempnum=0 \ifnum#2=1 \xdef\startmark{\endmark} 
         \edef\tmp{\splitfirstmark}
         \ifx\tmp\empty \else \xdef\startmark{\splitfirstmark}\fi\fi\fi
      \edef\tmp{\splitbotmark}
      \ifx\tmp\empty \else \xdef\endmark{\splitbotmark}\fi
      \advance\tempnum by1
   \repeat}

%%% Glob�ln� po��t�n� ��dk� p�es odstavce

\newdimen\mhangindent  \newcount\mhangafter  \newcount\mprevgraf
%\def\par{\ifhmode\mpar\fi} % staci az uvnitr prostredi
\def\mpar{%
  \prevgraf=\mprevgraf \hangindent=\mhangindent \hangafter=\mhangafter
  \endgraf \global\mprevgraf=\prevgraf \global\leftskip=0pt \relax}

%%% Zpracov�n� jednoho inzer�tu

\newif\ifznacka \znackafalse
\def\inz #1: #2 <#3>{\par\begingroup
   \def\currinz{#1} \def\currtit{#2} \def\currnote{#3}
   \expandafter \ifx \csname inz:#1\endcsname \relax \else
      \errmessage {The inz: #1 is processed twice}\fi
   \expandafter \gdef \csname inz:#1\endcsname {#2}
   \def\par{\ifhmode\mpar\fi} \mprevgraf=0
   \let\iname=\fi \gdef\ifa{}
   \expandafter \expandafter \expandafter 
      \startujinzerat \expandafter \iffalse \input #1.inz 
   \par \writenumbers \endgroup \medskip}
\def\Inz #1: #2 <#3>{\par\begingroup
   \def\currinz{#1} \def\currtit{#2} \def\currnote{#3}
   \expandafter \ifx \csname inz:#1\endcsname \relax \else
      \errmessage {The inz: #1 is processed twice}\fi
   \expandafter \gdef \csname inz:#1\endcsname {#2}
   \def\par{\ifhmode\mpar\fi} \mprevgraf=0
   \let\iname=\fi \gdef\ifa{}
   \setbox0=\vbox{\setfonts[DynaGroteskDC/] \let\titfont=\btitfont
      \expandafter \expandafter \expandafter 
      \startujinzerat \expandafter \iffalse \input #1.inz 
   \par \writenumbers} 
   \dimen0=\ht0 \advance\dimen0 by\dp0 \advance\dimen0 by 1\baselineskip
   \dimen1=\hsize \advance\dimen1 by6pt
   \moveleft 3pt\vbox{\hrule height\dimen0 width\dimen1}
   \nobreak\vskip-\dimen0 \nointerlineskip
   \vbox to\dimen0{\vss\special{ps: 1 setgray}\box0\special{ps: 0 setgray}\vss}
   \endgroup \medskip}
\def\startujinzerat {\ifnextchar [\setlogo\runinzerat}
\def\setlogo [#1] {%
    \epsfxsize=\logowidth \setbox0=\hbox{\epsfbox{loga/#1.eps}}%
    \dimen0=\ht0 \advance\dimen0 by.5\baselineskip \divide\dimen0 by\baselineskip 
    \mhangafter=-\dimen0 \mhangindent=-\logowidth \advance\mhangindent by-2mm
    \hbox to\hsize{\vrule height8pt width0pt 
       \hss\epsfxsize=1.5cm \vbox to0pt{\kern-.5\baselineskip\box0\vss}}
    \nobreak \vskip-\baselineskip
    \runinzerat}
\def\runinzerat #1 \par{\noindent
       \listecek
       \if-#1\relax \mhangindent=\pindent \mhangafter=-1 \else
       \if*#1\relax \mhangindent=\pindent \mhangafter=-1 \srdicko\kern4pt \else
       \if@#1\relax \mhangindent=\pindent \mhangafter=-1 \kontakt\kern4pt \else
          \indent
          {\leftskip=\pindent\baselineskip=13pt\titfont #1\par}\nobreak\smallskip
       \fi\fi\fi}
\def\listecek{\llap{\vbox to0pt{\kern-9pt\epsfxsize=6mm\epsfbox{pic/listek.eps}\vss}\kern3pt}}
\def\kontakt{{\zapfont\char"76}}
\def\srdicko{{\zapfont\char"AA}}
\newcount\znacnum
\znacnum=0
\def\znacka{\global\advance\znacnum by1 \znackatrue
   {\G D\zcislo \ifnum\znacnum<10 0\fi\the\znacnum}\kern4pt\relax}

%%% V�pis po�tu ��dk�, ceny a po�et stran ulo�it do souboru

\newwrite\pgout
\newcount\totalpages  \totalpages=12  % p�edpoklad
\softinput \jobname.pg                % up�esn�n� p�edpokladu
\newcount\kalendpage 
\kalendpage=\totalpages  \divide\kalendpage by2
\ifodd\kalendpage \advance\kalendpage by-1 \fi
\immediate\openout\pgout=\jobname.pg 

\newwrite\outnumbers
\immediate\openout\outnumbers=\jobname.cal

\newif\ifplati
\def\cena #1 #2 {\gdef\cenazaradek{#1}}
\def\cenazaradek{0}
\def\konec{\vfil\break \advance\pageno by-1
   \immediate\write\pgout{\totalpages=\the\pageno} % ulo��m aktu�ln� po�et stran
   \iwo{^^J==========================}
   \iwo{^^JCELKOV� CENA: \the\celkcena\space K�, 
            bez t�ch, co neplat�, jen: \the\celkvynos\space K�, 
            po�et stran: \the\pageno^^J}
   \end}
\def\n{\global\platifalse}
\newcount\celkcena  \newcount\celkvynos
\celkcena=0  \celkvynos=0
\def\ssp{\space\space\space}
\def\iwo{\immediate\write\outnumbers}
\def\writenumbers{\bgroup\def~{ }\def\gfb{ } 
   \iwo {\ifznacka D\zcislo\ifnum\znacnum<10 0\fi\the\znacnum: \fi\currtit}
   \iwo {\ssp<\currnote> [\currinz]} 
   \iwo {\ssp Po�et ��dk�: \the\mprevgraf}
   \count0 = \cenazaradek \multiply \count0 by\mprevgraf
   \global\advance\celkcena by \count0
   \ifplati \global\advance\celkvynos by \count0 \fi
   \iwo {\ssp CENA: \the\mprevgraf x\cenazaradek\space= \the\count0 \space K�%
         \ifplati\else \space =====> neplat�! <=====\fi}
   \ifx \ifa\empty \else \iwo{\ifa}\fi
   \egroup \global\platitrue}
\def\faktura{\bgroup\catcode`\^^M=13 \scanfa}
\def\scanfa #1\efa{\def~{ }\def\,{ }
   \xdef\ifa{\ifx\ifa\empty\else\ifa^^J\fi \ssp\ssp#1}\egroup}
{\catcode`\^^M=13 %
 \gdef ^^M{^^J\ssp\ssp}}%

%%% Zak�zan� znaky

\catcode 168=15
\catcode 173=15
\catcode 164=15
\catcode 160=13  \let^^a0=~  % wordova nezlomiteln� mezera
\catcode 178=15
\catcode 180=15

%%% Zna�kov�n�

\let\endi=\endinput   
\let\G=\bf
\let\B=\bf
\let\I=\it
\def\g #1 {{\G #1} }
\def\tim #1,#2#3{#1:#2#3}
\def\dat #1.#2.{#1.\,#2.}
\let\,=\thinspace
\def\tel{{\dotekfont b}~}
\def\telfax{{\dotekfont b}/fax~}
\def\gfb{\unskip\space\hfil\penalty -4 \hfilneg}
\def\hfb{\hfil\break}
\chardef\tilde=`\~
\def\sen{\unskip~---\space\ignorespaces}
\def\p  {\par \leftskip=\pindent \noindent \ignorespaces}
\def\px {\p \llap{{\dotekfont a} }\ignorespaces}
\def\pxg{\px\g}

%%% Zna�kov�n� Radio

\newcount\numden
\newif\ifextraden
\def\den #1 #2{\par{\setfonts[DynaGroteskR/]\bi #1}\enspace 
     \ulozdny #2 \relax \par\nobreak}
\def\ulozdny{\numden=0 \extradentrue \bgroup \G \runden}
\def\runden{\futurelet \next\testden}
\def\testden{\ifx \next\dat \expandafter \ulozextraden
   \else \ifx \next\relax \undeclareden
             \ifextraden\else \thinspace\mesic.\fi\egroup 
         \else \expandafter \expandafter \expandafter \ulozden \fi \fi}
\def\ulozextraden #1 {\advance\numden by1
   \expandafter \gdef\csname den:\the\numden\endcsname {#1}%
   \ifextraden\else \thinspace\mesic.\fi 
   \ifnum\numden=1 \else ,\space\fi
   #1\extradentrue
   \runden}
\def\ulozden #1 {\advance\numden by1
   \expandafter \gdef\csname den:\the\numden\endcsname {\dat#1\mesic.}%
   \ifnum\numden=1 \else ,\space\fi
   #1\extradenfalse \runden}
\def\undeclareden{\advance\numden by1 
   \global \expandafter \let \csname den:\the\numden\endcsname \relax}
\def\dn #1{\expandafter \ifx \csname den:#1\endcsname\relax
   \errmessage{radio: datum ��slo #1 nen� deklarov�no !}\fi
  {\G \csname den:#1\endcsname}}
\def\dnn #1{{\def\dat##1.##2.{##1.}\dn#1}}

%%% Zna�kov�n� Seznam m�st

\newcount\ittenum
\def\titx #1 (#2){\medskip
   \global\ittenum=0 \hskip\pindent \listecek{\titfont #1}\par\nobreak
   \if |#2|\else \smallskip{\normalfont(#2)}\par\nobreak \fi
   \nobreak\smallskip}
\outer\def\itte #1, #2;{\global\advance\ittenum by1
   {\setfonts[/6.3pt]\baselineskip=7.2pt
   \noindent\leftskip=\pindent \llap{\the\ittenum. }{\I#1,} #2\par}}   
\def\�tvrtsk{\relax}
\outer\def\ittethick #1, #2;{\global\advance\ittenum by1
   \setfonts[/7.3pt]\baselineskip=8.2pt \rightskip=0pt \smallbull~{\I#1,} #2 \ignorespaces}
\def\smallbull{\leavevmode\raise.1ex\hbox{\kern.03em\smallzapfont\char"A7\kern.03em}}
\def\titxthick #1 (#2){\medskip
   \global\ittenum=0 \hskip\pindent \listecek{\titfont #1 
      \if|#2|\else{\normalfont(#2)}\fi}\par\nobreak\smallskip}
\def\zahustit{\expandafter 
     \let\csname itte\expandafter\endcsname \csname ittethick\endcsname
   \let\�tvrtsk=\smallbull
   \let\titx=\titxthick}


%%% Zna�kov�n� kalen�rium

\def\kal #1 #2 #3 #4, #{\par\vfil \kalendfont\leftskip=38mm \noindent 
  \llap{\hbox to10mm{\uppercase{#1}\hss}\hbox to12.5mm{#2\hss}\hbox to15.5mm{#3\hss}}%
  \uppercase{\kalendbffont #4}\hfil\break\uppercase}  
\def\setkalend{\let\I=\kalendsmfont \baselineskip=12pt\kalendfont}
\def\processkalend{\vbox to266mm{\hsize=173mm \setkalend \let\iname=\fi
      \expandafter \iffalse \input kalend \vfil}}

%%% Sekce

\newcount\secnum
\newif\ifiwo  \iwotrue
\newif\ifmarkshipped \markshippedtrue
\def\subt #1 (#2){\ifnum\lastpenalty=-10000 \else\endsub\fi 
   \vskip4pt plus3pt \global\advance\secnum by1 
   \hbox{\mark{\the\secnum}\epsfxsize=\hsize \epsfysize=60pt\epsfbox{pic/list.eps}}\nobreak
   \vskip-40pt \indent\special{ps: 1 setgray}%
   $\vcenter{\leftskip=\pindent \baselineskip=15pt
   \setfonts[DynaGroteskR/17]\vrule height18pt depth5pt width0pt \bf#1}$%
   \special{ps: 0 setgray}\par \global\markshippedfalse
   {\def~{ }\def\gfb{ }\toLheader{#1}\toRheader{#2}
    \ifiwo\iwo{^^J========== #1 ==========^^J}\fi} \global\iwotrue    
   \nobreak\vskip29pt plus3pt\relax}
\def\endsub{\ifmarkshipped\else\mark{\the\secnum}\fi\global\markshippedtrue}
\def\toLheader#1{\expandafter\xdef \csname Lhead:\the\secnum\endcsname{#1}}
\def\toRheader#1{\expandafter\xdef \csname Rhead:\the\secnum\endcsname{#1}}

%%% Texty

\def\sezntext{{\I S~inzer�ty pod zna�kou, pros�me, zas�lejte v�t��
   ob�lku se zn�mkou na odpov�di. \quad \srdicko~sezn�men�~/~\kontakt~kontakty}\medskip}

%%% Output rutina

\voffset=-1in \hoffset=-1in
\output={\ifnum\pageno=\kalendpage  \outputkalend \fi
         \normaloutput
         \advancepageno}
\def\normaloutput{\ifodd\pageno \prepareRheader \else \prepareLheader \fi 
   \shipout\vbox{\podtiskuj\pagebody\ramecek}}
\def\pagebody{\ifodd\pageno \oddpagebody \else \evenpagebody \fi}
\def\evenpagebody{\moveright15mm\vbox to0pt{\kern17mm\box255\vss}\nointerlineskip}
\def\oddpagebody{\moveright 10mm\vbox to0pt{\kern17mm\box255\vss}\nointerlineskip}
\newdimen\ramw  \ramw=.24bp
\def\ramecek{\ifodd\pageno \oddramecek \else \evenramecek \fi}
\def\evenramecek{\moveright7mm\vbox{\kern8mm\setgray{.3}
 \hbox{\vrule height\ramw width8mm \kern5pt \vbox to0pt{\vss
    \hbox{\leftheadfont \expandafter\lowercase\expandafter{\Lhead}}\kern-\prevdepth\kern-2.5pt}}
 \hrule height194.5mm width\ramw
 \hbox{\vrule height\ramw width54.5mm \pgelipsa \vrule height\ramw width62mm\kern-6mm}
 \setgray{0}}}
\def\oddramecek{\vbox{\kern8mm\setgray{.3}
 \hbox to141mm{\hss \ifnum\pageno=1 \else
    \vbox to0pt{\vss\hbox{\rightheadfont \Rhead}\kern-\prevdepth\kern-3.5pt}\fi
    \kern5pt \vrule height\ramw width8mm
       \ifnum\pageno=1 \else\rlap{\numberfont\kern3pt\vbox to0pt
          {\pstransform{90 rotate}{\kern-6.5pt DOTEK \cislo/\rocnik}\vss}}\fi}\nointerlineskip
 \hbox to141mm{\hss \vrule height194.5mm width\ramw}\nointerlineskip
 \hbox to141mm{\vrule height\ramw width56mm \hss \pgelipsa \vrule height\ramw width54.5mm}
 \setgray{0}}}
\def\pgelipsa{\hbox to30mm{%
   \kern15mm\special{" gsave .85 setgray 1 .44 scale 0 0 24.8 0 360 arc fill grestore}%
   \kern-15mm\hss\vbox to0pt{\vss
   \hbox{\setgray{0}\pagenofont\romannumeral\pageno\setgray{.3}}\kern-2.5pt}\hss}}
\newcount\headnum 
\def\prepareLheader{\edef\Lhead{}
   \headnum=\startmark\relax \tempnum=\endmark\relax \advance\tempnum by1
   \prepLhead}
\def\prepLhead{\edef\Lhead{\ifx\Lhead\empty\else\Lhead\space/\space\fi
   \csname Lhead:\the\headnum\endcsname}%
   \advance\headnum by1
   \ifnum\headnum<\tempnum \expandafter \prepLhead \fi}
\def\prepareRheader{\edef\Rhead{}
   \headnum=\startmark\relax \tempnum=\endmark\relax \advance\tempnum by1
   \prepRheadfirst}
\def\prepRheadfirst{\expandafter \ifx \csname Rhead:\the\headnum\endcsname \empty
   \advance\headnum by-1 \expandafter \prepRheadfirst
   \else \expandafter \prepRhead \fi}
\def\prepRhead{\expandafter \ifx \csname Rhead:\the\headnum\endcsname \empty
   \else \edef\Rhead{\ifx\Rhead\empty\else\Rhead\space/\space\fi
          \csname Rhead:\the\headnum\endcsname} \fi
   \advance\headnum by1 
   \ifnum\headnum<\tempnum \expandafter \prepRhead \fi}

\def\outputkalend{\shipout\vbox{\podkalend\kalendbody\kalendramecek}%
                  \advancepageno \shipout\vbox{} \advancepageno}
\def\kalendbody{\setbox0=\vbox to0pt{\processkalend\vss}
   \ifnahled \moveright8mm\vbox{\kern5mm\box0} \else
   \moveright14mm\vbox to0pt{\kern193mm\pstransform{-90 rotate}{\box0}\vss}\fi
   \nointerlineskip}
\def\kalendramecek{\moveright7mm \vbox{\kern8mm\setgray{.3}
   \hbox to 282mm{\vrule height\ramw width8mm \hss
      \vbox to0pt{\vss\hbox{\rightheadfont kalend�rium}\kern-\prevdepth\kern-3.5pt}
      \kern5pt \vrule height\ramw width8mm
      \rlap{\numberfont\kern3pt\vbox to0pt
          {\pstransform{90 rotate}{\kern-6.5pt DOTEK \cislo/\rocnik}\vss}}}\nointerlineskip
   \hbox to 282mm{\vrule width\ramw \hss \vrule height194.5mm width\ramw}\nointerlineskip
   \hrule height\ramw \setgray{0}}}

%%%% Podtiskov� obr�zky

\outer\def\podtisk #1, #2, #3, #4, #5 {\expandafter \def \csname podtisk:#1\endcsname
   {#2,#3,#4,{#5}}}
\def\podtiskuj {\expandafter \ifx \csname podtisk:\the\pageno\endcsname \relax
   \else \expandafter \expandafter \expandafter
         \runpodtisk \csname podtisk:\the\pageno\endcsname \fi}
\def\runpodtisk #1,#2,#3,#4{\vbox to0pt{\kern#1 \hbox to\pagew{\hss 
   \kern#2\kern#2 \epsfxsize=#3 \epsfbox{pic/#4.eps}\hss}\vss}\nointerlineskip}
\def\podkalend {\expandafter \ifx \csname podtisk:0\endcsname \relax
   \else \expandafter \expandafter \expandafter
         \runkalendpodtisk \csname podtisk:0\endcsname \fi} 
\def\runkalendpodtisk #1,#2,#3,#4{\vbox to0pt{\kern\pageh
   \pstransform{-90 rotate}{\vbox to0pt{\kern#1 \hbox to\pageh{\hss
      \kern#2\kern#2 \epsfxsize=#3 \epsfbox{pic/#4.eps}\hss}\vss}}\vss}\nointerlineskip}

%%%% Tisk dvoustr�nek, p�edefinuje \shipout a \end

\newbox\leftbox
\setbox\leftbox=\hbox{}

\let\orishipout=\shipout
\let\oriend=\end

\def\duoshipout\vbox#1{\setbox0=\vbox to\pageh{#1\vss}%
   \ifodd \pageno 
       {\count1=\count0 \advance\count0 by-1
       \orishipout \maybelandscape {\hbox{\storepapersize \kern5mm
          \hbox to\pagew{\box\leftbox\hss}\hbox to\pagew{\box0\hss}}}}
   \else \global\setbox\leftbox=\box0\fi}
\def\duoend {\ifvoid\leftbox \else \orishipout \maybelandscape{%
               \hbox{\box\leftbox}}\fi \oriend}


%%%% Mont� A5 str�nek na A4 archy do se�itku, p�edefinuje \shipout a \end

\newdimen\corroffset  \corroffset=0pt
\newcount\halfpages  
\halfpages=\totalpages \divide\halfpages by2 \advance\halfpages by1
\maxdeadcycles=40

\newbox\storebox
\setbox\storebox=\vbox{}
\newdimen\driftspace  \driftspace=0pt

\def\nullrule{\hrule height0pt}
\def\montshipout\vbox#1{%
   \ifnum\pageno<\halfpages
      \global\setbox\storebox=
         \vbox{\vbox to\pageh{#1\nullrule\vss}\penalty0 \unvbox\storebox}
      \message{[s:\the\pageno]}
   \else
      \global\advance\halfpages by-1
      \setbox0=\vsplit\storebox to\pageh \relax
      \setbox1=\vbox to\pageh{#1\nullrule\vss}
      \ifodd\pageno
         {\count1=\count0 \count0=\halfpages
         \advance\voffset by\corroffset
         \orishipout \maybelandscape {\maybecropmarks
            {\hbox{\storepapersize \kern\sheetoffset \kern-.5\driftspace
                \hbox to\pagew{\box0\hss}\kern\driftspace \hbox to\pagew{\box1\hss}}}}}
      \else
         {\count1=\halfpages
          \advance\voffset by\corroffset
          \orishipout \maybelandscape {\maybecropmarks
             {\hbox{\storepapersize \kern\sheetoffset \kern-.5\driftspace
                 \hbox to\pagew{\box1\hss}\kern\driftspace \hbox to\pagew{\box0\hss}}}}
          \ifdrifting \global\advance\driftspace by\driftskip \fi}
      \fi
   \fi
}
% dojet� vak�t�:
\def\montend{\dosupereject \ifvoid\storebox \let\montend=\oriend
   \else \message{v:}\shipout\vbox{\line{}} \global\advance\pageno by1
   \fi \montend}

%%%% Oto�it sazbu? Ud�lat o�ezov� a pasovac� zna�ky?

\def\maybelandscape #1{\iflandscape 
   \vbox{\kern-\pageh \ifosvit \kern-2\cropoffset \fi
   \pstransform{90 rotate}{#1}}\else #1\fi}          
\def\maybecropmarks #1{\ifosvit \makecropmarks{#1}\else #1\fi}

%%%% O�ezov� a pasovac� zna�ky

\newdimen\cropw        \cropw=.1pt        % ���ka linky
\newdimen\cropl        \cropl=7.5mm       % d�lka linky (o�ezov�ch i pasovac�ch)
\newdimen\cropd        \cropd=2.5mm       % vzd�lenost zna�ky od okraje
\newdimen\graymw       \graymw=4mm        % velikost �tvere�ku u �k�ly �ed�
\newdimen\graymd       \graymd=1mm        % vzd�lenost mezi �tvere�ky
\newdimen\cropoffset   \cropoffset=10mm   % zv�t�en� okraje pro bi�ut�rii
\newdimen\driftskip    \driftskip=.35mm   % p�idan� hodnota v ohybu archu
\newdimen\sheetoffset  \sheetoffset=.5mm  % posunut� v�ech str�nek na archu

\def\cropUL{\vbz{\offinterlineskip\vss
   \hbz{\kern-.5\cropw\vrule height\cropl width\cropw\hss}
   \kern\cropd\kern-.5\cropw
   \hbz{\hss\vrule height\cropw width\cropl \kern\cropd}
   \kern-.5\cropw}}
\def\cropUR{\vbz{\offinterlineskip\vss
   \hbz{\kern-.5\cropw\vrule height\cropl width\cropw\hss}
   \kern\cropd\kern-.5\cropw
   \hbz{\kern\cropd\vrule height\cropw width\cropl \hss}
   \kern-.5\cropw}}
\def\cropBL{\vbz{\offinterlineskip
   \kern-.5\cropw
   \hbz{\hss\vrule height\cropw width\cropl \kern\cropd}
   \kern\cropd \kern-.5\cropw
   \hbz{\kern-.5\cropw\vrule height\cropl width\cropw\hss}
   \vss}}
\def\cropBR{\vbz{\offinterlineskip
   \kern-.5\cropw
   \hbz{\kern\cropd\vrule height\cropw width\cropl \hss}
   \kern\cropd \kern-.5\cropw
   \hbz{\kern-.5\cropw\vrule height\cropl width\cropw\hss}
   \vss}}
\def\pasovak{\vbz{\offinterlineskip\vss
   \hbz{\kern-.5\cropw \vrule height\cropl width\cropw\hss}
   \kern-.5\cropl\kern-.5\cropw
   \hbz{\kern-.5\cropl \vrule height\cropw width\cropl\hss}
   \kern-.5\cropw}}
\def\kernpasovak{\kern.5\cropl \kern\cropd}
\def\graymarks{\grayrect 1 \grayrect .9 \grayrect .8
   \grayrect .7 \grayrect .6 \grayrect .5 \grayrect .4
   \grayrect .3 \grayrect .2 \grayrect .1 \grayrect 0 }
\def\grayrect#1 {\setgray{#1}\ifvmode \hrule \else \vrule \fi
   width\graymw height\graymw \kern\graymd}
\def\vgraymarks{\vbz{\kern\graymd \graymarks \vss}}
\def\hgraymarks{\hbz{\kern\graymd \graymarks \hss}}
\def\croppagename #1{\vbz{\vss
   \hbz{\cropmarkfont \kern2mm \jobname, strana \the#1\hss}
   \kern-\prevdepth\kern.5\cropoffset}}
\def\ohyb{\hbz{\kern-.5\cropw
   \ifdim \driftspace>0pt 
      \kern-.5\driftspace \vrule width\cropw
      \kern-\cropw \kern.5\driftspace \fi 
   \vrule height\cropl width\cropw
   \ifdim\driftspace>0pt 
       \kern-\cropw \kern.5\driftspace \vrule width\cropw \fi
   \hss}}

\def\makecropmarks #1{% #1 je box, kolem ktereho bude bizuterie
   \vbox{\setbox0=#1
      \pagew=\wd0 \advance\pagew by-.5\driftspace \advance\pagew by-\sheetoffset
      \pageh=\ht0 \advance\pageh by\dp0
      \kern\cropoffset 
      \vbz{\hbz{\kern\cropoffset \box0\hss}\vss}\nointerlineskip
      \hbox{\kern\sheetoffset \kern\cropoffset \kern-.5\driftspace \cropUL 
            \croppagename{\count0}%
            \kern.5\driftspace \kern.25\pagew \vbz{\vss \pasovak \kernpasovak}%
            \kern.25\pagew \vbz{\vss \ohyb \kern\cropd}%
            \croppagename{\count1}%
            \kern.25\pagew \vbz{\vss \pasovak \kernpasovak}%
            \kern.5\driftspace \kern.25\pagew \cropUR}\nointerlineskip
      \hbox{\kern\sheetoffset \kern\cropoffset
            \hbz{\vbox to\pageh{\hbz{\hss\vgraymarks\kern.5\cropoffset}%
                     \offinterlineskip\kern.5\pageh
                     \hbz{\hss\pasovak \kernpasovak \kern.5\driftspace}\vss}\hss}%
            \kern\pagew \kern.5\driftspace \kern\cropd \kern.5\cropl
            \vbz{\vss\pasovak\kern.5\pageh}}\nointerlineskip
      \hbox{\kern\sheetoffset \kern\cropoffset \kern-.5\driftspace \cropBL
            \vbz{\kern.5\cropoffset\hgraymarks\vss}%
            \kern.5\driftspace \kern.25\pagew \vbz{\kernpasovak \pasovak \vss}%
            \kern.25\pagew \vbz{\kern\cropd \ohyb \vss}%
            \vbz{\kern.5\cropoffset\hgraymarks\vss}%
            \kern.25\pagew \vbz{\kernpasovak \pasovak \vss}%
            \kern.5\driftspace \kern.25\pagew \cropBR}\nointerlineskip
      \kern\cropoffset}}

%%%% Re�imy tisku

\newif\ifnahled     \nahledtrue
\newif\ifosvit      \osvitfalse
\newif\iflandscape  \landscapefalse
\newif\ifdrifting   \driftingfalse
\def\nahled    {\nahledtrue  \osvitfalse
                \message{MODE: nahled^^J}}
\def\dvoustrany{\nahledfalse \osvitfalse
                \let\shipout=\duoshipout \let\end=\duoend
                \setpapersize 304mm 210mm % aby to nebylo a4 landscape
                \message{MODE: dvoustrany^^J}}
\def\brozura   {\nahledfalse \osvitfalse \driftingtrue
                \let\shipout=\montshipout \let\end=\montend
                \message{MODE: brozura^^J}}
\def\osvit     {\nahledfalse \osvittrue  \driftingtrue
                \setpapersize 317mm 230mm
                \let\shipout=\montshipout \let\end=\montend
                \message{MODE: osvit^^J}}
\def\landscape {\landscapetrue}
%\def\duplex    {\special{ps: /duplex false setpagedevice}}
\def\setpapersize #1 #2 {\def\storepapersize{%
   \iflandscape \special{papersize=#2,#1}\else\special{papersize=#1,#2}\fi
   \global\let\storepapersize=\relax}}
\let\storepapersize=\relax

%%%% Uvozovky

\catcode`"=13 \def"{\bgroup\def"{\crqq\egroup}\clqq}

\endinput

%%%%%%%%%%%%%%%%%%%%%%%% Dokumentace k makr�m %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Pou�it�
=======

Makra jsou ur�ena pro sazbu inzertn� p��lohy �asopisu Dotek.
Na za��tku hlavn�ho souboru nap��u \input makra.tex
a hlavn� soubor mus� m�t n�zev ve tvaru <slovo>_YYMM.tex
kde YY je posledn� dvoj��sl� ro�n�ku a MM m�s�c (s p��padnou nulou
jako prvn� ��slic�). Je-li m�s�c 07, pak makro automaticky pracuje
s dvoj��slem 7-8.

Hlavn� soubor obsahuje \input zacatek.tex, kde je zaveden �vodn�
obr�zek. D�le je uvedeno \begmulti 2 (p�echod na dvousloupcovou sazbu),
pak vlastn� sazba a nakonec \input itte (seznam m�st, kde koup�te
dotek) a \endmulti. �innost TeXu ukon��m \konec, co� krom� \end
ulo�� z�v�re�n� statistiky (o po�tu inzer�t�, celkov� cen� a po�tu
str�nek) do souboru \jobname.cal

Vlastn� sazba pou��v� n�sleduj�c� makra:

\subt N�zev kapitoly (p��p. n�zev odd�lu)

\cena <��slo><mezera>K�/��dek

\inz soubor:<mezera>N�zev inzer�tu<mezera>"<"pozn�mka">"

\subt uv�d� dal�� kapitolu. Odd�ly se pou��vaj� tyto: pravideln�
setk�n�, aktuality a inzerce. N�zev odd�lu se uvede jen u prvn�
kapitoly odd�lu, ostatn� kapitoly stejn�ho odd�lu musej� m�t n�zev
odd�lu pr�zdn�.  

\cena ur�uje cenu za ��dek inzer�tu (pro v�stup do souboru
\jobname.cal). Tato cena plat� tak dlouho, dokud se neuvede jin�
\cena.

\inz vytvo�� jeden inzer�t, kter� je �ten ze souboru soubor.inz.
N�zev inzer�tu se ulo�� do \jobname.cal v�etn� pozn�mky. Na sazbu
nemaj� tyto �daje ��dn� vliv.

V souboru.inz TeX p�esko�� ve�ker� text a� po prvn� v�skyt
\iname. Za touto zna�kou n�sleduje [logo] (toto m��e chyb�t) a
skute�n� n�zev inzer�tu ukon�en� pr�zdn�m ��dkem. Tento n�zev se
pou�ije v sazb�. D�le je vlastn� text inzer�tu ukon�en� koncem souboru
nebo \endi (to je tot� jako \endinput).

Zakomentov�n�m \iname a uveden�m dal��ho \iname na konci souboru mohu
p�id�vat dal�� varianty stejn�ho inzer�tu (pro nov�j�� ��sla
�asopisu). Soubory *.inz udr�uji ve stejn�m adres��i pro v�echna ��sla.
Jen po kompletov�n� ��sla ud�l�m arch�v ��sla pomoc� 
zip datum.zip *.inz  a na za��tku pr�ce s nov�m ��slem ud�l�m 
cp dotek_YYMM.tex dotek_YYMM<nov�>.tex

[logo] mus� b�t ve form�tu .eps p�ipraveno v adres��i loga/.
Usad� se doprava se ���kou \logowidth a text automaticky obte�e.
Bohu�el, v m�st� obte�en� se m��e objevit zlom sloupce. To se mus�
pohl�dat a pokud to nastane, je pot�eba nap��klad upravit jinak po�ad�
inzer�t�.

Makro napo��t� po�et ��dk� inzer�tu a jeho celkovou cenu a ulo�� tyto
�daje do \jobname.cal

\n\inz je tot� jako \inz, jen se do souboru \jobname.cal uvede, �e
inzerent za uve�ejn�n� neplat�.

\Inz je inzer�t zv�razn�n� negativn�m proveden�m: b�l� text na �ern�m
pozad�. Takov� inzer�t je ve sloupc�ch nezlomiteln�


Kalend�rium
===========

Kalend�rium m� sv�j text v souboru kalend.tex. P�ed zna�kou \iname je
v�e ignorov�no (jako v souborech .inz) ale za zna�kou \iname 
n�sleduje p��mo text (na rozd�l od soubor� .inz).

Makro na konci pr�chodu spo��t� po�et stran a ulo�� o tom informaci
do \jobname.pg. Pokud tento soubor neexistuje (p�i prvn�m pr�chodu),
p�edpokl�d� se po�et stran 12. Kalend�rium se um�st� na stranu, 
kterou makro vypo��t� jako po�et_stran / 2.

Text inzer�t� se kalend�riem p�eru�� zcela automaticky. Po sazb�
kalend�ria text inzer�t� plynule navazuje. Nen� tedy pot�eba do
hlavn�ho souboru uv�d�t polohu kalend�ria nebo p�em��let, kter�
inzer�t m�m p�esunout p�ed kalend�rium a kter� za.

Po�et stran mus� b�t n�sobkem 4, jinak se kalend�rium usad� blb� a
nav�c vzninkou ve svaze�ku arch� A4 vak�ty.

Kalend�rium se tiskne na jednu stranu (text oto�en o 90 stup��)
a nav�c text p�e�n�v� doprava na n�sleduj�c� stranu. N�sleduj�c�
strana je implementov�na jako vak�t. P�i sestaven� sazby do svaze�ku
t�m doc�l�me k��en� efekt textu kalend�ria "p�es dv� strany".


Zna�kov�n�
==========

Jsem p�evzal po panu Brabcovi. 

\B  ... tu�n� font (jako \bf)
\G  ... tu�n� roz���en� font. P�vodn� byly t�mto fontem s�zeny �asy
        a data. Moc se mi to nel�bilo, proto nastavuji \let\G=\B,
        ale ve zna�en� st�le rozli�uji tu�n� a tu�n� roz���en� font,
        proto�e se m��e st�t, �e se k rozd�ln� viz�i t�chto �daj�
        n�kdy vr�t�m.
\g #1<mezera> ... jako {\G #1}<mezera>
\tim <hodiny>,<minuty>  ... vytiskne �as ve form�tu <hodiny>:<minuty>
        zna�en� ponech�m u v�ech �asov�ch �daj�, abych mohl p�ej�t
        jednodu�e na jin� form�t �asu, t�eba <hodiny>^{<minuty>}
\dat <den>.<m�s�c>.  ... vytiskne jako <den>.<mal�_nezlom_mezera><m�s�c>.
\,  ... mal� nezlomiteln� nenatahovac� mezera
\tel .. vytiskne telefonek n�sledovan� nezlomitelnou mezerou
\telfax ... vytiskne telefonek n�sledovan� "/fax~"
\tilde  ... vytiskne vlnku
\endash ... mal� poml�ka na p�l�tver��k bez mezer kolem
\sen    ... poml�ka na �tver��k. P��padnou mezeru p�ed \sen makro
            zam�n� za nezlomitelnou mezeru a za poml�ku p�id�
            oby�ejnou mezeru.
\px ... zah�j� odstavec, namaluje odsazovac� zna�ku (�ipku) a cel� 
        odstavec bude odsazen.
        Dal�� varianty makra \px jsem po panu Brabcovi nep�evzal,
        proto�e jsem si nebyl schopen zapamatovat, jak to funguje
        a tud�� jsem to nebyl schopen to efektivn� pou��vat.
\p  ... jako \px, ale nenamaluje �ipku.
\pxg ... jako \px \g
\gfb ... (good fill break) odstran� p��padnou p�edchoz� mezeru.
        D�le ozna�� m�sto jako vhodn� pro zlom (z�pornou penaltou) 
        a pokud ke zlomu p�ece nedojde, chov� se jako mezera.

Zna�kov�n� v radio.inz:

\den <den v t�dnu><mezera>{<seznam dat>} ... vytiskne den v t�dnu tu�n�m
        italikem a n�sledn� tiskne <seznam dat> ve fontu \G.
        <seznam dat> obsahuje data odd�len� mezerou, datum z�kladn�ho
        m�s�ce (shodn� s ��slem �asopisu) nesm� obsahovat m�s�c ani
        zna�ku \dat. Data jin�ch m�s�c� musej� obsahovat zna�ku \dat.
        Makro dopln� za posledn� datum z�kladn�ho m�s�ce ��slovku
        m�s�ce automaticky a odd�l� ve v�stupu data ��rkami.
        Nav�c si zapamatuje data v po�ad� uveden�m v <seznamu dat>
        tak, �e je pot� mo�no pou��vat makro \dn1, \dn2 atd.
        bez nutnosti ps�t cel� datum.
\dn<��slo>  ... vytiskne datum podle <seznamu dat> 
        z naposledy pou�it�ho makra \den. Datum bude ve fontu \G.
\dnn<��slo> ... tot� jako \dn<��slo>, ale zaml�� ��slo m�s�ce.

Zna�kov�n� v itte.tex

\titx <titul><pr�zdn� ��dek>   ... vytiskne titul sekce
\�tvrtsk                       ... odd�len� jednotliv�ch �tvrt�
\itte <n�zev m�sta>, <adresa>; ... jeden �daj o m�st�. <n�zev m�sta>
         vytiskne kurz�vou.

Zna�kov�n� v kalend.tex

\kal <den v t�dnu><mezera><datum><mezera><�as><mezera><akce>, {\I <m�sto>}
         Jeden �daj do kalend�ria. <den v t�dnu>, <akce> a <m�sto> jsou 
         konvertov�ny na velk� p�smena pomoc� \uppercase.


Seznamovac� inzer�ty
====================

se zpracov�vaj� stejn�, jako b�n� inzer�ty. Proto�e ale tyto inzer�ty
jsou obvykle bez n�zvu, je mo�n� za \iname uv�st znak "-" (��dn� n�zev),
nebo znak "*" (inzer�t ozna�en srd��kem) nebo znak "@" (inzer�t
ozna�en koso�tvere�kem.

Jde-li o inzer�t pod zna�kou (bez odkazu na telefon nebo adresu), je
nutn� na za��tku textu inzer�tu uv�st makro \znacka, kter� vygeneruje
do sazby pot�ebnou zna�ku ve tvaru: ��slo �asopisu ��slo inzer�tu.


Plovouc� z�hlav�
================

Z�hlav� vlevo obsahuje n�zev kapitoly, kter� doj��d� 
z p�edchoz� dvoustrany a v�echny kapitoly, kter� za��naj� na dan�
dvoustran�. Z�hlav� se tedy vztahuje na celou dvoustranu, nejen na
jednotlivou stranu. Z�hlav� vpravo obsahuje jm�na odd�l�, kter�
jsou rovn� vzta�eny na celou dvoustranu. Z�hlav� se generuj� 
zcela automaticky.

Implementace: ka�d� kapitola m� v sazb� dv� stejn� zna�ky \mark,
jednu na za��tku a druhou na konci. Ob� zna�ky ulo�� do sazby makro
\subt: jednak ulo�� zna�ku doj��d�j�c� kapitoly, pak vlo�� zlomitelnou
mezeru a d�le zna�ku nov� kapitoly. Pokud pot�ebuji zna�ku
doj��d�j�c� kapitoly vlo�it explicitn� (nap��klad p�ed \vfil\break)
pak pou�iji makro \endsub. Po tomto makru u� n�sleduj�c� \subt
nevkl�d� zna�ku doj��d�j�c� kapitoly. Makro \subt nevlo�� zna�ku
doj��d�j�c� kapitoly ani v p��pad�, �e p�edch�z� vertik�ln�
\penalty-10000, tak�e p��klad s \vfil\break bude fungovat spr�vn�,
a�koli nepou�iji \endsubt.

Makro �e��c� sloupcovou sazbu se sna�� po napln�n� sud� strany naplnit
je�t� n�sleduj�c� stranu lichou, aby zjistilo �daje o kapitol�ch na 
cel� dvoustran� a teprve pak p�ed� sazbu \output rutin�. Po ukon�en�
sloupcov� sazby pomoc� \endmulti tato vlastnost p�est�v� platit.
Znamen� to, �e se nedoporu�uje p�eru�ovat sloupcovou sazbu jinde ne�
na konci informa�n� ��sti, proto�e pak nemus� plovouc� z�hlav�
spr�vn� fungovat.
 
Chci-li poslat do z�hlav� jin� text ne� je n�zev kapitoly, pak po
pou�it� makra \subt mohu napsat \toLheader{text pro z�hlav�}.
Texty pro lev� z�hlav� jsou pomoc� \lovercase konvertov�ny 
na mal� p�smena.


Podtiskov� obr�zky
==================

\podtisk <��slo-strany>, <y-space>, <balance>, <width>, <jm�no-obr�zku>
(parametry jsou odd�leny ��rkou a mezerou)
deklaruje podtiskov� obr�zek pro danou stranu <��slo-strany>
s uveden�m vertik�ln� mezery nad dobr�zkem <y-space> a 
���kou obr�zku <width>. Obr�zek bude na str�nce centrov�n
s vych�len�m o <balance> doprava na ���ce strany \pagew.

Obr�zek mus� b�t spr�vn� �ed� (makro se o tuto v�c nestar�)
a mus� b�t ve form�tu eps um�st�n v adres��i pic.

Makra \podtisk je mo�n� pro v�echny strany uv�st na za��tku
dokumentu. Pokud \podtisk n�jakou stranu nedefinuje, tato strana
nebude m�t ��dn� podtiskov� obr�zek.

Podtisk pro kalend�rium se deklaruje pomoc� \podtisk 0, ...
(strana nula), proto�e nen� jasn�, na kter� stran� kalend�rium bude.
Je-li deklarov�n podtisk pro strany, na kter�ch se objevilo
kalend�rium, tato deklarace je ignorov�na. Obr�zek pro kalend�rium
centruje na ���ku dvojn�sobn� strany, tj. na \pageh.


Re�imy zpracov�n�
=================

Je mo�n� volit mezi t�emi re�imy:
\nahled     ... jedna str�nka sazby na v�stupn� stran�.
                tiskne str�nky A4 na strany A4 tak, �e lev� horn� roh
                je v z�krytu.
\dvoustrany ... dv� strany, kter� budou vid�t vedle sebe, jsou ti�t�ny
                vedle sebe. Vhodn� pro n�hled kompletn�ch dvoustran.
                Z�m�rn� nen� oto�eno na landsacape, proto�e prohl��e�
                gv mi v landscape re�imu zlob�. Aby mi dvips z toho
                neud�lalo A4 landscape, musel jsem nastavit rozm�ry
                str�nky 304mm x 210mm.
\brozura    ... str�nky boudou po dvou na str�nce tak, aby
                p�ehnut�m A4 list� v p�lce vznikl po�adovan� se�itek.
\osvit      ... tot� jako \brozura, ale nav�c s o�ezov�mi a
                pasovac�mi zna�kami

P��kaz \setpapersize <���ka> <v��ka> ur�uje rozm�ry archu p�ed
oto�en�m pomoc� p��padn�ho \landscape. Informace o t�chto rozm�rech 
je ulo�ena do dvi pomoc� \special{papersize=<���ka>,<v��ka>} p�i
nepou�it� \landscape a pomoc� \special{papersize=<v��ka>,<���ka>}
p�i pou�it� \landscape.

P��kaz \landscape funguje jen v re�imech \dvoustrany, \brozura a
\osvit a star� se o oto�en� sazby ka�d�ho archu individu�ln�. Nen�
vyu�ito @landscape z dvips, tj. (momo jin�) nen� v PostScriptov�ch 
koment���ch na za��tku uvedeno, �e se jedn� o landscapoe re�im.
D�vod: nem�m s n�m dobr� zku�enosti jednak proto, �e gv mi s landscape
nefunguje a jednak ps2pdf se pak chov� z�hadn�.


Mont� str�nek, p�idan� prostor pro ohyb
========================================

P�i sestavov�n� se�itku p�i re�imu \brozura nebo \osvit
(�ty�i strany A5 na jednen arch A4 z l�cov� i rubov� strany) 
se dvojice stran A5 prvn�ho archu kladou t�sn� vedle sebe,
dvojice z druh�ho archu ale u� maj� od sebe vzd�lenost \driftskip,
dvojice z t�et�ho archu 2\driftskip atd. Jedn� se o kompenza�n� mezeru,
kter� vyrovn�v� ztr�tu vn�j��ch arch� v ohybu. Je nastavena na hodnotu
\driftskip=.35mm.

Nech� m�me arch A4 orientov�n "na v��ku", tj. m��eme hovo�it 
o "horn�/doln�" str�nce A5, o "prav�" pasovac� zna�ce, o posunut� 
"dol�" atd.

Prvn� arch A4 sest�v� rozm�rov� p�esn� ze dvou str�nek A5 na l�cov� i
rubov� stran� bez mezery odvozen� z \driftskip mezi sebou.  Proto�e
���ka str�nky A5 je zaokrouhlena na cel� milimetry: \pagew=148mm,
zauj�m� sazba na archu A4 v��ku 296mm. Proto�e pro A4 se uv�d� v��ka
297mm, m�me jeden milimetr rezervu. Sazba v�ech dvoustr�nek
je tedy posunuta dol� o \sheetoffset=.5mm.

N�sleduj�c� archy maj� v��ku sazby dvoustr�nky zv�t�enou o n�sobek
\driftskip, p�itom na v�ech ar��ch z�st�v� ve stejn� poloze osa ohybu.
Horn� i doln� okraj sazby se od sebe vzdaluj�. P�i uveden�ch rozm�rech
z toho vyl�v�, �e sazba �tvrt�ho archu lehce p�esahuje rozm�r 297mm 
o 0,025mm na horn�m i doln�m okraji. To je celkem zanedbateln�.
M�me mo�nost se vej�t do arch� A4 pro 16 str�nkov� dokument.

P�i re�imu \osvit z�st�v� tak� pro v�echny archy na m�st� osa ohybu
posunut� o \sheetoffset dol�. Na m�st� jsou tak� postrann� (�ty�i)
pasovac� zna�ky. O�ezov� zna�ky a horn�/doln� pasovac� zna�ky se 
o n�sobky \driftskip postupn� od sebe oddaluj�.

N�sleduje seznam rozm�r�, kter�mi m��eme ��dit vzhled bi�ut�rie
(o�ezov�ch a pasovac�ch zna�ek) p�i re�imu \osvit. Vedle jsou uvedeny
defaultn� hodnoty t�chto parametr�:

\cropw=.1pt       ���ka linky pasovac�ch i o�ezov�ch zna�ek. 
                  M�sto pro o�ez je p�esn� v ose t�to ���ky.
\cropl=7.5mm      D�lka linek pasovac�ch i o�ezov�ch zna�ek
\cropd=2.5mm      Vzd�lenost pasovac�ch a o�ezov�ch zna�ek od zrcadla sazby
\graymw=4mm       Velikost �tvere�k� se �k�lou �ed�
\graymd=1mm       Vzd�lenost mezi �tvere�ky pro �k�lu �ed� 
\cropoffset=10mm  Okraj kolem zrcadla sazby, aby vznikl prostor pro
                  pasovac� a o�ezov� zna�ky








