Skip to content
Snippets Groups Projects
Forked from vaclab / ptb-latex
35 commits behind the upstream repository.
ptbposter-2020.clo 5.57 KiB
% Rolf Niepraschk, Rolf.Niepraschk@ptb.de

\ProvidesFile{ptbposter-2020.clo}%
  [2022/09/20 1.0.1 PTB-Poster layout 2020 (RN)]

\typeout{*** LAYOUT 2020 ***}

\setlength\PTB@default@fontsize@base{0.0118336635635\PTB@scale@base}% 10pt (A4), 40pt (A0)
\setlength\PTB@default@author@fontsize{0.0157550946737\PTB@scale@base}%   53.3pt (A0)
\setlength\PTB@default@title@fontsize@base{.0282849711986\PTB@scale@base}% 95.7pt (A0)
\setlength\PTB@default@foot@fontsize{0.00567538119577\PTB@scale@base}%  19.2pt (A0)   

\iftutex% LuaTeX oder XeTeX
  \setfontfamily\PTBdesignFont{UniversNextPro-Light}[%
    Ligatures=TeX,
    BoldFont=*,
    ItalicFont=*Italic,
    Scale=1.01,
    Extension=.ttf]
  \setsansfont{texgyreheros}[
    Ligatures=TeX,
    Extension=.otf,
    UprightFont=*-regular,
    BoldFont=*-bold,
    ItalicFont=*-italic,
    BoldItalicFont=*-bolditalic]
\else
  \let\PTBdesignFont=\sffamily% ???
\fi

\AtEndPreamble{%
  \setlength\PTB@topmargin{0.193953\PTB@scale@base}%
  \ifPTBlandscape  % ???
    \setlength\PTB@framewidth{0.950378471315\PTB@scale@base}%  3215pt (1130mm) (A0) 
    \setlength\PTB@frameheight{0.447\PTB@scale@base}% 1563pt  (549mm) (A0) 
  \else
    \setlength\PTB@framewidth{0.656013458076\PTB@scale@base}%  2219pt  (780mm) (A0)
    \setlength\PTB@frameheight{0.740117747573\PTB@scale@base}% 2504pt  (880mm) (A0)
  \fi
}

\PTB@AddToShipoutPictureBG{% relativ zur oberen linken Ecke des Blattes
  \PTB@tempdima=-0.07\PTB@scale@base
  \put(\PTB@leftmargin,-0.07\PTB@scale@base){%
    \textcolor{PTBcolor}{\includegraphics[height=.04545\PTB@scale@base]%
          {PTB-logo-A.mps}}
  }
  \put(\PTB@leftmargin,-0.085\PTB@scale@base){%
    \parbox[t]{\PTB@framewidth}{%
      \PTBdesignFont\normalsize
      \begin{varwidth}[t]{.32\linewidth}
        Physikalisch-Technische Bundesanstalt\\
        Nationales Metrologieinstitut
      \end{varwidth}
      \hfill
      \begin{varwidth}[t]{.6\linewidth}
        \begin{hyphenrules}{nohyphenation}
          \def\and{, }\@author % hier wird \@thanks gefüllt
        \end{hyphenrules}
      \end{varwidth}  
    }
  }%
  \def\PTB@tempa{\parbox[c]{\PTB@framewidth}{% Komplette Titeldefinition
    \PTB@title@justification\PTB@title@series\PTBdesignFont\titleFontSize
    \microtypesetup{protrusion=false}\@title}}%
  \begingroup
  \@tempcnta=\@ne \@tempcntb=10499 %
  \loop\ifnum\@tempcnta<25 % Finden der ersten passenden titleFontSize
    \multiply\@tempcntb 10000 \divide\@tempcntb by 10500 % jeweils um 5% kleiner
    \PTB@scaleTitleFontSize{0.\the\@tempcntb}% 1:0.9999, 2:0.9522, 3:0.9068, ...
    %\typeout{\the\@tempcnta\space XXX: \titleFontSize, 0.\the\@tempcntb}%
    \setbox\z@ \hbox{\PTB@tempa}%
    \ifdim\dimexpr\ht\z@+\dp\z@>\PTB@maxtitleheight
      \advance\@tempcnta\@ne % weiter, wenn zu gross
    \else
      \@tempcnta=999 % Abbruch
    \fi
  \repeat
  \endgroup
  \put(\PTB@leftmargin,-0.158\PTB@scale@base){%
    \begin{hyphenrules}{nohyphenation}%
      \PTB@tempa% Title
    \end{hyphenrules}
  }%
  % blauer Rahmen
  \put(\PTB@leftmargin,\dimexpr-\textheight-2\PTB@textvsep-\PTB@topmargin){%
    \linethickness{\PTB@framethickness}\color{PTBcolor}%
    \framebox(\dimexpr\textwidth+2\PTB@texthsep,%
      \dimexpr\textheight+2\PTB@textvsep){\backgroundContent}}%
}

\PTB@AddToShipoutPictureFG{% relativ zur linken unteren Ecke des Textbereichs
  \PTB@AtTextLowerLeft{%
    \PTBdesignFont\footFontSize\normalcolor
    \PTB@tempdima=-\PTB@framethickness 
    \PTB@tempdimb=-0.0125\PTB@scale@base
    \put(-\PTB@texthsep,-\PTB@textvsep){
      \put(\PTB@tempdima,\PTB@tempdimb){%
        \begin{tabular}[t]{@{}l@{}}
          Physikalisch-Technische Bundesanstalt \\
          Nationales Metrologieinstitut \\[\f@baselineskip]
          \ifx\PTB@street\@empty\else\PTB@street\\\fi
          \ifx\PTB@location\@empty\else\PTB@location\\\fi
          \href{https://www.ptb.de/}{www.ptb.de}
        \end{tabular}%
      }
      \PTB@tempdima=0.115\PTB@scale@base
      \put(\PTB@tempdima,\PTB@tempdimb){%
        \begin{tabular}[t]{@{}ll@{}}
          \ifx\first@author\@empty\else \multicolumn{2}{@{}l@{}}{\first@author}\\\fi 
          \ifx\PTB@workingGroup\@empty\else \multicolumn{2}{@{}l@{}}{\PTB@workingGroup}\\\fi
          \\
          \ifx\PTB@phone\@empty\else\ifPTB@german@ Telefon\else Phone\fi:
            &\PTB@phone\\\fi
          \ifx\PTB@fax\@empty\else Fax:&\PTB@fax\\\fi
          \ifx\PTB@email\@empty\else\ifPTB@german@ E-Mail\else E-mail\fi:
            &\href{mailto:\PTB@email}{\PTB@email}\\\fi
        \end{tabular}%
      }
      \PTB@tempdima=0.219\PTB@scale@base
      \put(\PTB@tempdima,\PTB@tempdimb){%
        \begin{tabular}[t]{@{}l@{}}
          \@thanks % wurde bei der Ausführung von \@author gefüllt.
        \end{tabular}%
      }  
      \PTB@tempdima=\dimexpr\PTB@framewidth+\PTB@framethickness %
      \PTB@tempdimc=0.038875630234\PTB@scale@base % 131bp (A0)
      \put(\PTB@tempdima,\PTB@tempdimb+\ht\strutbox){%
        \makebox(0,0)[rt]{%
          \begin{minipage}[t]{.5\textwidth}%
            \mbox{}
            \hfill  
            \ifx\PTB@qrcode\@empty\else
              \begin{minipage}[b]{\PTB@tempdimc}%
                \sbox\@tempboxa{\qrcode[height=\PTB@tempdimc,tight]%
                  {\PTB@qrcode}}%
                \raisebox{\dimexpr\dp\@tempboxa}{\usebox\@tempboxa}%
              \end{minipage}%
            \fi
            \hspace{.5\columnsep}%
            \ifx\PTB@logo\@empty\else
              \begin{minipage}[b]{\PTB@tempdimc}%
                \centering
                \includegraphics[height=\PTB@tempdimc]{\PTB@logo}%
              \end{minipage}%
            \fi 
          \end{minipage}% 
        }%
      }
    }
  }
}

\endinput