Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • vaclab/ptb-latex
  • andre.waehlisch/ptb-latex
2 results
Show changes
Showing
with 1275 additions and 380 deletions
## ptbposter
Das Projekt enthält eine LaTeX-Dokumentenklasse und andere Komponenten zur
LaTeX-Dokumentenklasse und andere Komponenten zur
Erzeugung eines PTB-konformen Posters. Näheres siehe Dokumentation [Teil
1](ptbposter-doc-1.pdf) und [Teil 2](ptbposter-doc-2.pdf).
1](ptbposter-doc-1.pdf) und [Teil 2](ptbposter-doc-2.pdf) sowie die
Beispiele, die die Verwendung positionierbarer Boxen
[(tcolobox)](https://www.ctan.org/pkg/tcolorbox) sowie die Einbeziehung des
Grafikpakets [TikZ](https://www.ctan.org/pkg/pgf) zeigen:
[tcb-example1](tcb-example1.pdf) und [tcb-example2](tcb-example2.pdf).
Rolf Niepraschk, 2015-05-26
Rolf Niepraschk, 2025-03-13
ptbposter/Ringo.png

50.5 KiB

File added
% Rolf Niepraschk, Rolf.Niepraschk@ptb.de
\ProvidesFile{ptbposter-2018.clo}%
[2022/09/20 1.0.0 PTB-Poster layout 2018 (RN)]
\typeout{*** LAYOUT 2018 ***}
\setlength\PTB@default@fontsize@base{0.0130170299199\PTB@scale@base}% 11pt (A4), 44pt (A0)
\setlength\PTB@default@author@fontsize{0.0157550946737\PTB@scale@base}% 53.3pt (A0)
\setlength\PTB@default@title@fontsize@base{0.0315101893474\PTB@scale@base}% 106.6pt (A0)
\setlength\PTB@default@foot@fontsize{0.00567538119577\PTB@scale@base}% 19.2pt (A0)
\iftutex% LuaTeX oder XeTeX
\setfontfamily\PTBdesignFont{texgyreheros}[
Ligatures=TeX,
Extension=.otf,
UprightFont=*-regular,
BoldFont=*-bold,
ItalicFont=*-italic,
BoldItalicFont=*-bolditalic]
\let\sffamily=\PTBdesignFont
\else
\let\PTBdesignFont=\sffamily
\fi
\AtEndPreamble{%
\ifx\@author\@empty
\setlength\PTB@topmargin{0.152\PTB@scale@base}%
\else
\setlength\PTB@topmargin{0.180824222418\PTB@scale@base}%
\fi
\ifPTBlandscape
\setlength\PTB@framewidth{0.950378471315\PTB@scale@base}% 3215pt (1130mm) (A0)
\ifx\@author\@empty
\setlength\PTB@frameheight{0.490824222418\PTB@scale@base}% 1660pt (584mm) (A0)
\else
\setlength\PTB@frameheight{0.462\PTB@scale@base}% 1563pt (549mm) (A0)
\fi
\else
\setlength\PTB@framewidth{0.656013458076\PTB@scale@base}% 2219pt (780mm) (A0)
\ifx\@author\@empty
\setlength\PTB@frameheight{0.769\PTB@scale@base}% 2602pt (914mm) (A0)
\else
\setlength\PTB@frameheight{0.740117747573\PTB@scale@base}% 2504pt (880mm) (A0)
\fi
\fi
}
\PTB@AddToShipoutPictureBG{% relativ zur oberen linken Ecke des Blattes
\PTB@tempdima=-0.077\PTB@scale@base
\put(\PTB@leftmargin,\PTB@tempdima){%
\parbox[b]{\PTB@framewidth}{% TODO: vereinfachen?
\parbox[b]{.401\PTB@scale@base}{%
\textcolor{PTBcolor}{% TODO: Tikz-Grafik erzeugen (autom.?) und verwenden
\includegraphics[height=.055\PTB@scale@base]{PTB-logo-A.mps}
}% 1,58365758755
\ifPTB@logo@long@
\hfill
\raisebox{.0025\PTB@scale@base}{%
%\includegraphics[width=.612\linewidth]{ptbposter-logo-B.mps}%
\resizebox{.61\linewidth}{!}{%
\hspace{-.2ex}%
\begin{varwidth}[b]{\linewidth}%
\PTBdesignFont\bfseries
Physikalisch-Technische Bundesanstalt\\
Braunschweig und Berlin\\
\mdseries
Nationales Metrologieinstitut
\end{varwidth}%
}%
}%
\fi
}%
\hfill
\ifx\PTB@logo\@empty\else
\includegraphics[height=.055\PTB@scale@base]{\PTB@logo}%
\fi
}
}%
\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
\PTB@tempdima=-0.127\PTB@scale@base
\put(\PTB@leftmargin,\PTB@tempdima){\PTB@tempa}% Title
\PTB@tempdima=-0.172\PTB@scale@base
\def\and{, }%
\put(\PTB@leftmargin,\PTB@tempdima){\parbox[b]{\PTB@framewidth}{% Autoren
\PTB@authors@justification\PTBdesignFont\authorFontSize\@author}}%
% hier wird \@thanks gefüllt
\linethickness{\PTB@framethickness}\color{PTBcolor}%
\PTB@tempdima=-0.0883095039717\PTB@scale@base
\put(\PTB@leftmargin,\PTB@tempdima){%
\line(1,0){\dimexpr\paperwidth-2\PTB@leftmargin}}%
% blauer Rahmen
\put(\PTB@leftmargin,\dimexpr-\textheight-2\PTB@textvsep-\PTB@topmargin)%
{\framebox(\dimexpr\textwidth+2\PTB@texthsep,%
\dimexpr\textheight+2\PTB@textvsep){\backgroundContent}}%
}
\PTB@AddToShipoutPictureFG{% relativ zur linken unteren Ecke des Textbereichs
\PTB@AtTextLowerLeft{%
\put(-\PTB@texthsep,-\PTB@textvsep){%
\PTB@tempdimb=0.000420521447484\PTB@scale@base
\linethickness{\PTB@tempdimb}\normalcolor
\PTB@tempdima=-0.0420521447484\PTB@scale@base
\put(-.5\@wholewidth,\PTB@tempdima){%
\PTB@tempdima=0.0386879731686\PTB@scale@base
\PTB@tempdimb=0.00168208578994\PTB@scale@base
\ifx\PTB@qrcode\@empty
\color{PTBcolor}\framebox(\PTB@tempdima,\PTB@tempdima){}%
\else
\sbox\@tempboxa{\qrcode[height=\PTB@tempdima,tight]{\PTB@qrcode}}%
\raisebox{\dp\@tempboxa}{\usebox\@tempboxa}%
\fi
\color{PTBcolor}
\hspace{\PTB@tempdimb}\raisebox{-\@wholewidth}{%
\rule{\dimexpr\PTB@tempdima+2\@wholewidth}%
{\dimexpr\PTB@tempdima+2\@wholewidth}}%
\hspace{\PTB@tempdimb}\framebox(\PTB@tempdima,\PTB@tempdima){}%
}
\PTB@tempdimb=-0.00841042894969\PTB@scale@base
\footFontSize\sffamily\normalcolor
\PTB@tempdima=0.122792262665\PTB@scale@base
\put(\PTB@tempdima,\PTB@tempdimb){%
\begin{tabular}[t]{@{}l@{}}
Physikalisch-Technische Bundesanstalt \\
Braunschweig und Berlin \\[\f@baselineskip]
\ifx\first@author\@empty\else \textbf{\first@author}\\\fi
\ifx\PTB@department\@empty\else \PTB@department\\\fi
\ifx\PTB@workingGroup\@empty\else \PTB@workingGroup\\\fi
\end{tabular}%
}
\PTB@tempdima=0.263246426125\PTB@scale@base
\put(\PTB@tempdima,\PTB@tempdimb){%
\begin{tabular}[t]{@{}ll@{}}
\ifx\PTB@street\@empty\else\multicolumn{2}{@{}l@{}}{\PTB@street}\\\fi
\ifx\PTB@location\@empty\else\multicolumn{2}{@{}l@{}}{\PTB@location}\\\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
\multicolumn{2}{@{}l@{}}{\href{http://www.ptb.de/}{www.ptb.de}}
\end{tabular}%
}
\PTB@tempdima=0.378469302736\PTB@scale@base
\put(\PTB@tempdima,\PTB@tempdimb){%
\begin{tabular}[t]{@{}l@{}}
\@thanks % wurde bei der Ausführung von \@author gefüllt.
\end{tabular}%
}
}
}
}
\endinput
% 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
\ProvidesPackage{ptbposter-add}[2016/01/25 v0.1a supplements for ptbposter (RN)]
\ProvidesPackage{ptbposter-add}[2019/02/20 v0.1b supplements for ptbposter (RN)]
\RequirePackage{ragged2e}
......@@ -29,7 +29,7 @@
\hspace{0pt}\ifPTB@temp\RaggedRight\fi#3
\end{minipage}
\fi
\par\ifx\relax#4\relax\else\vskip\columnsep #4\fi
\par\ifx\relax#4\relax\else\vskip.75\columnsep #4\fi
\@end@tempboxa
\end{minipage}%
\endtrivlist
......
No preview for this file type
\documentclass{ptbposter}
%\documentclass[sanserif,english]{ptbposter}
\documentclass[
%landscape,
%,english
%,a4paper
,layout2020
]{ptbposter}
\phone{+49-30-3481-7316}
\fax{+49-30-3481-7503}
\fax{+49-30-3481-7490}
\email{Rolf.Niepraschk@ptb.de}
\workingGroup{7.54 Vakuummetrologie}
\department{7.5 Wärme und Vakuum}
......@@ -15,43 +19,53 @@
\Author*{Max}{Mustermann}
\Author{Ellen}{Bogen}[Muster Universität Oberstadt]
\Author*{Peter}{Silie}[XYZ GmbH]
\Author{Rainer}{Unsinn}[1]
%%\scaleFontSizes{1.05}% Werte nahe an "1" wählen!
%%\scaleTitleFontSize{0.92}% Werte nahe an "1" wählen!
\logo{penguin.pdf}
%\scaletoPaper{a4}
%%\scaleFontSizes{1.05}% Werte nahe an "1" wählen!
\title{Die \LaTeX"=Dokumentenklasse "`ptbposter"'}
\title{Die \LaTeX-Dokumentenklasse "`ptbposter"'}
\begin{document}
\section{Einleitung}
Die \LaTeX"=Dokumentenklasse "`ptbposter"' ist geeignet, mit Hilfe des
Textsatzsystems \TeX, Poster im Hoch- und Querformat den offiziellen
Vorgaben der PTB entsprechend qualitativ hochwertig zu setzen.
Die \LaTeX"=Dokumentenklasse "`ptbposter"' ist geeignet, mit Hilfe des
Textsatzsystems \TeX\ qualitativ hochwertige Poster im Hoch- und Querformat
entsprechend den offiziellen Vorgaben der PTB zu setzen.
Zum Setzen eines Posters müssen die beiden Dateien "`\texttt{ptbposter.cls}"'
und "`\texttt{PTB-logo-poster.pdf}"' dem \TeX"=Compiler zugänglich sein,
d.\,h.\ sie müssen sich im \TeX"=Suchpfad befinden. Näheres dazu ist der
Dokumentation der benutzten \TeX"=Distribution zu entnehmen.
Dazu müssen die Dateien "`\texttt{ptbposter.cls}"',
"`\texttt{ptbposter-add.sty}"' und "`\texttt{ptbposter-logo-A.mps}"' dem
\TeX"=Compiler zugänglich sein, d.\,h.\ sie müssen sich im \TeX"=Suchpfad
befinden. Näheres dazu ist der Dokumentation der benutzten \TeX"=Distribution
zu entnehmen.
\begin{multicols}{2}
\section{Klassenoptionen}
\begin{itemize}
\item \textbf{a4paper}: Setzt von A0 abweichende Blattgröße (auch
"`\verb|{a3,a2,a1}paper|"' möglich).
\item \textbf{portrait}: Setzt das Poster im Hochformat (Standard).
\item \textbf{landscape}: Setzt das Poster im Querformat.
\item \textbf{serif}: Wählt die Serifenschrift für den Textbereich (Standard).
\item \textbf{sanserif}: Wählt die serifenlose Schrift für den Textbereich.
Es wird empfohlen, in diesem Falle die TeX"=Compiler "`lualatex"' oder
"`xelatex"' zu verwenden.
\item \textbf{serif}: Wählt die Serifenschrift für den Textbereich.
\item \textbf{sanserif}: Wählt die serifenlose Schrift für den Textbereich
(Standard).
\item \textbf{mathserif}: Wählt die Serifenschrift für den mathematischen
Modus.
\item \textbf{mathsanserif}: Wählt die serifenlose Schrift für den
mathematischen Modus (Standard).
\item \textbf{boldTitle}: Im Titel fette Schriftstärke verwenden.
\item \textbf{centerTitle}: Den Titel zentriert setzen.
\item \textbf{raggedTitle}: Den Titel mit "`Flatterrand"' setzen.
\item \textbf{centerAuthors}: Die Autoren zentriert setzen.
\item \textbf{shortPTBlogo}: verkürztes PTB-Logo (Text entfällt; nur im
Falle von "`layout2018"' wirksam)
\item \textbf{layout2018, layout2020}: Layoutvarianten
\end{itemize}
Alle anderen Optionen werden an die intern benutzte Dokumentenklasse
"`scrartcl"' weitergeleitet.
Ohne Angabe einer Sprachoption werden die Trennregeln für "`ngerman"' (neue
deutsche Rechtschreibung) benutzt.
......@@ -77,17 +91,19 @@ Die folgenden Angaben wurden in dieser Beispieldatei verwendet:
\begingroup
\scriptsize
\begin{verbatim}
\Author{Rolf}{Niepraschk}[Physikalisch-Technische Bundesanstalt]
\Author{Rolf}{Niepraschk}[%
Physikalisch-Technische Bundesanstalt]
\Author*{Max}{Mustermann}
\Author{Ellen}{Bogen}[Muster Universität Oberstadt]
\Author*{Peter}{Silie}[XYZ GmbH]
\Author{Rainer}{Unsinn}[1]
\end{verbatim}
\endgroup
Standardmäßig erscheint der zuerst aufgeführte Autor mit Adresse, E"~Mail usw.\
auch in der Fußzeile. Soll abweichend von dieser Regel ein später aufgeführter
Autor als "`korrespondierender Autor"' gelten, kann diesem als ersten
optionalen Parameter das Zeichen »!« übergeben werden. Beispiel:
optionalen Parameter das Zeichen "`!"' übergeben werden. Beispiel:
\begingroup
\scriptsize
......@@ -102,7 +118,8 @@ Gehört ein weiterer Autor nicht der PTB an, so ist dessen Institution als
optionaler Parameter am Ende des Makros anzugeben. Für den zweiten Autor wird
im hier gezeigten Beispiel die Sternform des Makros benutzt, da er derselben
Institution wie sein Vorgänger angehört. Der vierte Autor gehört zur
Institution des dritten und gleichzeitig zu einer weiteren.
Institution des dritten und gleichzeitig zu einer weiteren. Der letzte Autor
gehört derselben Institution an wie der erste.
\end{multicols}
......@@ -110,19 +127,6 @@ Institution des dritten und gleichzeitig zu einer weiteren.
\emph{Das Dokument "`\texttt{ptbposter-doc-2}"' enthält die Fortsetzung dieser
Anleitung.}
\textcolor{PTBcolor}{\rule{\textwidth}{0.25ex}}
\begin{equation}
\sum_{k=0}^\infty \frac{x^k}{k!} \neq \prod_{j=1}^{10} \frac{j}{j+1}.
\end{equation}
\begin{equation}
P_{r-j}=\begin{cases}
0 & \text{if $r-j$ is odd},\\
r!\,(-1)^{(r-j)/2} & \text{if $r-j$ is even}.
\end{cases}
\end{equation}
\end{document}
No preview for this file type
\documentclass[landscape]{ptbposter}
%\documentclass[english]{ptbposter}
\documentclass[
,landscape
%,english
%,a4paper
%,layout2018
,layout2020
]{ptbposter}
\phone{+49-30-3481-7316}
\fax{+49-30-3481-7503}
\fax{+49-30-3481-7490}
\email{Rolf.Niepraschk@ptb.de}
\workingGroup{7.54 Vakuummetrologie}
\department{7.5 Wärme und Vakuum}
\location{10587 Berlin}
\street{Abbestraße 2--12}
\QRcode{http://www.ptb.de/cms/fachabteilungen/abt7/fb-75/ag-754.html}
\Author{Rolf}{Niepraschk}[Physikalisch-Technische Bundesanstalt]
\Author*{Max}{Mustermann}
\Author{Ellen}{Bogen}[Muster Universität Oberstadt]
\Author*{Peter}{Silie}[XYZ GmbH]
%%\scaleFontSizes{1.05}% Werte nahe an "1" wählen!
%%\scaleTitleFontSize{0.92}% Werte nahe an "1" wählen!
\logo{penguin.pdf}
\QRcode{https://www.ctan.org/}
%\scaletoPaper{a4}
%%\scaleFontSizes{1.05}% Werte nahe an "1" wählen!
\title{Die \LaTeX"=Dokumentenklasse "`ptbposter"'}
\title{Die \LaTeX-Dokumentenklasse "`ptbposter"'}
\begin{document}
~\par\bigskip
\emph{Das Dokument "`\texttt{ptbposter-doc-1}"' enthält den ersten Teil dieser
Anleitung.}
\bigskip
\begin{multicols}{3}
......@@ -36,33 +38,36 @@ Anleitung.}
\begin{itemize}
\item \verb|\scaleFontSizes|: Skaliert alle Schriftgrößen im Textbereich um
den angegebenen Wert. Beispiel: Mit \verb|\scaleFontSizes{1.04}| wird der
Fließtext um 4\,\% vergrößert gesetzt.
\item \verb|\scaleTitleFontSize|: Skaliert die Schriftgröße in der Titelzeile
um den angegebenen Wert. Beispiel: Mit \verb|\scaleTitleFontSize{0.97}| wird der
Titel um 3\,\% verkleinert gesetzt.
\item \verb|\scaletoPaper|: Skaliert das gesamte Dokument auf das als
Parameter angegebene Papierformat, wobei die DIN/ISO"=A"=Reihe bevorzugt
werden sollte. Beispiel: \verb|\scaletoPaper{a4}| erzeugt eine Version des
Posters, die gut archiviert werden kann.
\end{itemize}
Die Zahlenwerte für \verb|\scaleFontSizes| und \verb|\scaleTitleFontSize|
sollten nicht stark von "`1"' abweichen, um das Gesamtbild nicht zu
beeinträchtigen. Die Makros \verb|\phone|, \verb|\fax|, \verb|\email|,
\verb|\workingGroup|, \verb|\department|, \verb|\location|, \verb|\street| und
den angegebenen Wert, sodass die Seite günstig gefüllt ist. Beispiel: Mit
\verb|\scaleFontSizes{1.04}| wird der Fließtext um 4\,\% vergrößert gesetzt
(global in der Preamble).
\item \verb|\relscale| Skaliert aktuelle Schriftgröße (lokal). Siehe dazu
auch Beschreibung zum Paket \verb|relsize|. \columnbreak
\item \verb|\scaleTitleFontSize|: Skaliert die Schrift des Titels um den
angegebenen Wert. Sobald der Titel mehr als eine Zeile einnimmt, wird er
unabhängig von diesem Wert sinnvoll skaliert.
\item \verb|\scaleFont|: Skaliert die aktuelle Schrift lokal um den
angegebenen Wert.
\item \verb|\logo|: Spezielles Logo im Kopfbereich (rechtsbündig)
%\columnbreak
\end{itemize}
Die Zahlenwerten für \verb|\scaleFontSizes|, \verb|\scaleTitleFontSize| und
\verb|\relscale| sollten nicht stark von "`1"' abweichen, um das Gesamtbild
nicht zu beeinträchtigen. Die Makros \verb|\phone|, \verb|\fax|, \verb|\email|,
\verb|\workingGroup|, \verb|\department|, \verb|\location|, \verb|\street| und
\verb|\QRcode| setzen die Informationen im Fußbereich und sind selbsterklärend.
\end{multicols}
\bigskip
Die jeweils aktuelle Version der Dokumentenklasse und der Beispieldokumente ist
im Git"=Repositorium der Arbeitsgruppe~7.54 unter der Adresse
\url{http://a75436.berlin.ptb.de/vaclab/latex/tree/master/ptbposter} zu finden.
Für Anregungen und Kritiken bin ich dankbar.
Die jeweils aktuelle Version der Dokumentenklasse und der Beispieldokumente
sind im Git"=Repositorium der Arbeitsgruppe~7.54 unter der Adresse
\url{https://gitlab1.ptb.de/vaclab/ptb-latex/-/tree/master/ptbposter} zu
finden. Für Anregungen und Kritiken bin ich dankbar.
\medskip
Rolf Niepraschk
Rolf Niepraschk, 3/2025
\end{document}
% Rolf Niepraschk, Rolf.Niepraschk@ptb.de
\ProvidesFile{ptbposter-new-engines.clo}%
[2022/09/08 v0.1g `PTB-Poster' new engines (RN/PTB)]
\makeatletter % wegen Laden aus normalem LaTeX-Dokument
\@ifundefined{ifSERIF}{%
\newif\ifSERIF \SERIFfalse
}{}
\@ifundefined{ifMATHSERIF}{%
\newif\ifMATHSERIF \MATHSERIFfalse
}{}
\RequirePackage[no-math]{fontspec}
\RequirePackage[mathit=sym]{unicode-math}
\ifSERIF
\setmainfont{texgyrepagella}[
Ligatures=TeX,
Extension=.otf,
UprightFont=*-regular,
BoldFont=*-bold,
ItalicFont=*-italic,
BoldItalicFont=*-bolditalic]
\else
\setsansfont{texgyreheros}[
Ligatures=TeX,
Extension=.otf,
UprightFont=*-regular,
BoldFont=*-bold,
ItalicFont=*-italic,
BoldItalicFont=*-bolditalic]
\setromanfont{texgyreheros}[
Ligatures=TeX,
Extension=.otf,
UprightFont=*-regular,
BoldFont=*-bold,
ItalicFont=*-italic,
BoldItalicFont=*-bolditalic]
\renewcommand*\familydefault{\sfdefault}%
\fi
\ifMATHSERIF
\setmathfont{texgyrepagella-math.otf}[
math-style=TeX,
bold-style=TeX,
]
\else
\setmathfont{FiraMath-Regular.otf}[
Scale=1,
math-style=TeX,
bold-style=TeX,
Numbers={Lining,Proportional},
]
%\RequirePackage[usefilenames,weight=Regular]{firamath-otf}
\setoperatorfont\mathsf
\unimathsetup{partial=upright}%
%\RequirePackage{mathastext}% nicht so gut
\setmathfont{texgyreheros-regular.otf}[range=up/{Latin,Greek,num}]
\setmathfont{texgyreheros-italic.otf}[range=it/{latin,greek}]
\setmathfont{texgyreheros-bolditalic.otf}[range=bfit/{latin,greek}]
\setmathfont{texgyreheros-bold.otf}[range=bfup/{latin,greek}]
\fi
\setmonofont{AnonymousPro-Regular}[%
Extension = .ttf,
BoldFont = AnonymousPro-Bold,
ItalicFont = AnonymousPro-Italic,
BoldItalicFont = AnonymousPro-BoldItalic,
Scale = 1.05,
RawFeature={embolden=.5}
]
\RequirePackage{newunicodechar}
\newunicodechar{^^^^202f}{\,}% 'NARROW NO-BREAK SPACE' (\u202F, 8239)
\newunicodechar{^^^^2009}{\,\hspace{0pt}}% 'THIN SPACE'
\newunicodechar{^^^^00ad}{\-}% 'SOFT HYPHEN'
\endinput
% Rolf Niepraschk, Rolf.Niepraschk@ptb.de
\ProvidesFile{ptbposter-old-engines.clo}%
[2020/03/09 v0.1c `PTB-Poster' old engines (RN/PTB)]
\RequirePackage[utf8]{inputenc}
\RequirePackage[T1]{fontenc}
\RequirePackage{textcomp}
\RequirePackage{tgpagella}
\RequirePackage{tgheros}
\RequirePackage[ttdefault=true,scale=1.034]{AnonymousPro}
\makeatletter % wegen Laden aus normalem LaTeX-Dokument
\@ifundefined{ifSERIF}{%
\newif\ifSERIF \SERIFfalse
}{}
\ifSERIF
\RequirePackage{qpxmath}
\else
%%%\renewcommand*\familydefault{\sfdefault}
%%%\RequirePackage{sfmath}
\@latex@error{works only with `LuaLaTeX' or `XeLaTeX'}{%
type:\MessageBreak
lualatex \jobname.tex\MessageBreak
or\MessageBreak
xelatex \jobname.tex
}%
\@@end
\fi
\endinput
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\ProvidesPackage{ptbposter-tcb}[2021/09/21 1.0.1 ptbposter/tcolorbox (RN)]
\newcommand*\PTB@posterSet{%
columns=3,rows=5,spacing=\PTB@texthsep,showframe=false,}
\newcommand*\posterSet[1]{%
\g@addto@macro\PTB@posterSet{#1,}%
}
\RequirePackage{kvoptions}[2009/07/17]
\SetupKeyvalOptions{%
family=ptbposter-tcb,%
prefix=PTB@,%
}
\DeclareStringOption[2]{boxlayout}
\ProcessKeyvalOptions*\relax
\newcommand*\PTB@boxesSet{}
\newcommand*\ARC{0.005\PTB@scale@base}
\ifcase \PTB@boxlayout
% 0
\g@addto@macro\PTB@boxesSet{enhanced jigsaw,sharp corners=downhill,arc=\ARC}
\or % 1
\g@addto@macro\PTB@boxesSet{enhanced jigsaw,sharp corners=uphill,arc=\ARC}
\or % 2
\g@addto@macro\PTB@boxesSet{enhanced jigsaw,arc=\ARC}
\or % 3
\g@addto@macro\PTB@boxesSet{arc=0pt}
\fi
\RequirePackage[most]{tcolorbox}
\tcbuselibrary{poster}
\usetikzlibrary{shadings,arrows.meta}
\colorlet{backgroundTop}{Goldenrod2!20}
\colorlet{backgroundBottom}{Goldenrod2!90}
\colorlet{boxBackground}{white}
\renewcommand*\backgroundContent{%
\begin{tikzpicture}%
\shade[top color=backgroundTop, bottom color=backgroundBottom,%
shading angle=\ifPTBlandscape 64.07\else 41.55\fi](0,0)%
% Winkel auf Basis von \PTB@framewidth und \PTB@frameheight
rectangle(\PTB@framewidth,\PTB@frameheight);%
\end{tikzpicture}%
}
\tcbposterset{%
coverage={%
height=\textheight,
width=\textwidth,
interior style={opacity=0},
top=0pt,bottom=0pt,left=0pt,right=0pt
}%
}%
\g@addto@macro\PTB@boxesSet{
,boxrule=\PTB@framethickness,
boxsep=0pt,
top=1ex,bottom=1ex,left=1ex,right=1ex,
toptitle=.6ex,bottomtitle=.6ex,lefttitle=1ex,righttitle=1ex,
%before title pre=\strut,
colback=boxBackground,
%opacityback=0.75,% ????
colframe=PTBcolor,
coltitle=white,
fonttitle=\sffamily\bfseries\centering,
title style={PTBcolor},
valign=top% center
}
\tcbset{% scheint so günstiger
adjusted title/.style={title={\raisebox{0pt}[\height][0pt]{#1}}}
}
\AddToHook{begindocument/end}{%
\protected@edef\PTB@tempa{\noexpand\tcbposterset{poster={\PTB@posterSet},%
boxes={\PTB@boxesSet}}}%
\PTB@tempa
\begin{tcbposter}%
}
\AddToHook{enddocument}{%
\end{tcbposter}%
}
\endinput
% Rolf Niepraschk, Rolf.Niepraschk@ptb.de
% Rolf Niepraschk, Rolf.Niepraschk@gmx.de
\setcounter{errorcontextlines}{100} \listfiles
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesClass{ptbposter}
[2016/08/25 v0.4a PTB-Poster-Klasse (RN)]
\ProvidesClass{ptbposter}[2025/03/12 1.1.1 PTB-Poster (RN)]
\newif\ifPTB@useCMYK \PTB@useCMYKfalse % vorerst
\newif\ifPTB@german@ \PTB@german@false
\newdimen\PTB@topmargin % Abstand zum Rahmen
\newdimen\PTB@leftmargin % Abstand zum Rahmen
\newdimen\PTB@default@fsize@base % Bezugsgröße für Standardschriftgröße im Textbereich
\newdimen\PTB@default@fontsize@base % Bezugsgröße für Standardschriftgröße im Textbereich
\newdimen\PTB@default@title@fontsize@base % Bezugsgröße für Standardschriftgröße im Titel
\newdimen\PTB@default@fsize % Standardschriftgröße im Textbereich (\normalsize)
\newdimen\PTB@default@tfsize % Standardschriftgröße für den Titel
\newdimen\PTB@default@afsize % Standardschriftgröße für die Autoren
\newdimen\PTB@default@ffsize % Standardschriftgröße im Fußbereich
\newdimen\PTB@default@title@fontsize % Standardschriftgröße für den Titel
\newdimen\PTB@default@author@fontsize % Standardschriftgröße für die Autoren
\newdimen\PTB@default@foot@fontsize % Standardschriftgröße im Fußbereich
\newdimen\PTB@texthsep % Abstand Textbereich zum blauen Rahmen
\newdimen\PTB@textvsep % Abstand Textbereich zum blauen Rahmen
\newdimen\PTB@framewidth % Breite des blauen Rahmens
\newdimen\PTB@frameheight % Höhe des blauen Rahmens
\newdimen\PTB@framethickness % Dicke des blauen Rahmens
\newdimen\PTB@scale@base % Bezugsgröße für papierabhängige Größenberechnung
\newdimen\PTB@maxtitleheight % Maximale Höhe des Titels
\newcommand*\authorFontSize{}
\newcommand*\footFontSize{}
\newcommand*\titleFontSize{}
\newcommand*\backgroundContent{}
\newcommand\PTB@tempa{}
\newcommand\PTB@tempb{}
......@@ -30,142 +36,150 @@
\newcommand\PTB@tempe{}
\newcommand\PTB@tempf{}
\let\PTB@tempdima=\@ovxx
\let\PTB@tempdimb=\@ovyy
\let\PTB@tempdimc=\@ovdx
\newdimen\PTB@tempdima
\newdimen\PTB@tempdimb
\newdimen\PTB@tempdimc
\newdimen\PTB@tempdimd
\newcounter{PTB@tempcnta}
\newcounter{PTB@tempcntb}
\newif\ifPTB@landscape \PTB@landscapefalse
\newif\ifPTB@XeOrLua \PTB@XeOrLuafalse
\newif\ifPTB@serif \PTB@seriffalse
\newbox\PTB@tempboxa
\RequirePackage{ifluatex,ifxetex}
\ifxetex\PTB@XeOrLuatrue\else\ifluatex\PTB@XeOrLuatrue\fi\fi
\newif\ifPTBlandscape \PTBlandscapefalse
\newif\ifSERIF \SERIFfalse
\newif\ifMATHSERIF \MATHSERIFfalse
\newif\ifFIRA \FIRAfalse
\newif\ifPTB@logo@long@ \PTB@logo@long@true
\DeclareOption{sanserif}{% noch experimentell! Besser: luaTeX/xeTeX + OTF
\PTB@seriffalse
\PassOptionsToPackage{pagesize=false}{typearea}
\PassOptionsToPackage{paper=a0paper,onecolumn,portrait,driver=none}{geometry}
\newcommand*\PTB@title@justification{\relax}
\newcommand*\PTB@authors@justification{\relax}
\newcommand*\PTB@title@series{\relax}
\newcommand*\PTB@layout{}
\newcommand*\PTB@target@size{}
\newcommand*\PTB@babel@opt{english,main=ngerman}
\DeclareOption{english}{\def\PTB@babel@opt{ngerman,main=english}}
\DeclareOption{ngerman}{\def\PTB@babel@opt{english,main=ngerman}}
\DeclareOption{german}{\def\PTB@babel@opt{english,main=ngerman}}
\DeclareOption{sanserif}{% noch experimentell! Besser: LuaTeX/XeTeX + OTF
\SERIFfalse
}
\DeclareOption{serif}{%
\PTB@seriftrue
\SERIFtrue
}
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}}
\ExecuteOptions{portrait,serif}
\DeclareOption{mathsanserif}{%
\MATHSERIFfalse
}
\DeclareOption{mathserif}{%
\MATHSERIFtrue
}
\DeclareOption{fira}{%
\FIRAtrue
}
\DeclareOption{boldTitle}{%
\global\let\PTB@title@series=\bfseries
}
\DeclareOption{centerTitle}{%
\global\let\PTB@title@justification=\centering
}
\DeclareOption{raggedTitle}{%
\global\let\PTB@title@justification=\raggedright
}
\DeclareOption{centerAuthors}{%
\global\let\PTB@authors@justification=\centering
}
\DeclareOption{a4paper}{%
\def\PTB@target@size{a4}
}
\DeclareOption{a3paper}{%
\def\PTB@target@size{a3}
}
\DeclareOption{a2paper}{%
\def\PTB@target@size{a2}
}
\DeclareOption{a1paper}{%
\def\PTB@target@size{a1}
}
\DeclareOption{a0paper}{%
\let\PTB@target@size=\@empty
}
\DeclareOption{landscape}{%
\PTBlandscapetrue
\PassOptionsToPackage{\CurrentOption}{geometry}
}
\DeclareOption{portrait}{%
\PTBlandscapefalse
\PassOptionsToPackage{\CurrentOption}{geometry}
}
\DeclareOption{shortPTBlogo}{%
\PTB@logo@long@false
}
\DeclareOption{layout2018}{%
\def\PTB@layout{0}%
}
\DeclareOption{layout2020}{%
\def\PTB@layout{1}%
}
%\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{babel}}
\DeclareOption*{\OptionNotUsed}
\ExecuteOptions{serif,raggedTitle,layout2020}
\ProcessOptions\relax
\RequirePackage{hyphsubst}% Trennregeln austauschen
\HyphSubstIfExists{ngerman-x-latest}{%
\HyphSubstLet{ngerman}{ngerman-x-latest}}{}
\HyphSubstIfExists{german-x-latest}{%
\HyphSubstLet{german}{german-x-latest}}{}
\RequirePackage[\PTB@babel@opt]{babel}
\iflanguage{ngerman}{\PTB@german@true}{}
\RequirePackage{etoolbox}
\preto\@classoptionslist{a0paper,portrait,ngerman,}
% Ohne Sprachangabe "deutsch" verwenden. Bessere Lösung?
\LoadClass{scrartcl}
\LoadClass[%
%,headings=normal
%,parskip=half
]{scrartcl}
\RequirePackage[verbose]{geometry}%
\@ifundefined{changefontsizes}{%
\ClassError{ptbposter}{%
Deine Version von KOMA-Script ist ungeeignet (vermutlich stark veraltet)!
Your version of KOMA-Script is unsuitable\MessageBreak
(probably very outdated)!
}{%
Installiere die aktuelle Version von KOMA-Script.
Install the latest version of KOMA-Script.
}%
\@@end
}{}
\RequirePackage{amsmath}
\ifPTB@XeOrLua
\RequirePackage[no-math]{fontspec}
\RequirePackage{unicode-math}
\setromanfont[Ligatures=TeX]{TeX Gyre Pagella}
\setsansfont[Ligatures=TeX]{TeX Gyre Heros}
%\setmonofont[Scale=0.88]{DejaVu Sans Mono}
%%%\setmonofont[Scale=1.05]{Latin Modern Mono}
\setmonofont{AnonymousPro-Regular}[%
Extension = .ttf,
BoldFont = AnonymousPro-Bold,
ItalicFont = AnonymousPro-Italic,
BoldItalicFont = AnonymousPro-BoldItalic,
Scale = MatchLowercase
]
%%%\setmonofont[Scale=MatchLowercase]{Anonymous Pro}%
%%% Fehler "This font using the "seac" command for accented characters"
%%% Behoben in "XeTeX 3.14159265-2.6-0.99992 "!
\ifPTB@serif
\setmathfont[math-style=ISO,bold-style=ISO]{TeXGyrePagellaMath-Regular}
\else
\setmathfont[math-style=ISO,bold-style=ISO]{Asana Math}
\setmathfont[range=\mathup,Scale=MatchLowercase]{TeXGyreHeros-Regular}
\setmathfont[range=\mathit,Scale=MatchLowercase]{TeXGyreHeros-Italic}
\setmathfont[range=\mathbfup,Scale=MatchLowercase]{TeXGyreHeros-Bold}
\setmathfont[range=\mathbfit,Scale=MatchLowercase]{TeXGyreHeros-BoldItalic}
\setmathfont[range=\mathsfup,Scale=MatchLowercase]{TeXGyreHeros-Regular}
\setmathfont[range=\mathsfit,Scale=MatchLowercase]{TeXGyreHeros-Italic}
\setmathfont[range=\mathbfsfup,Scale=MatchLowercase]{TeXGyreHeros-Bold}
\setmathfont[range=\mathbfsfit,Scale=MatchLowercase]{TeXGyreHeros-BoldItalic}
\setmathfont[range=\mathpunct]{TeXGyreHeros-Regular}
\fi
\else
\RequirePackage[utf8]{inputenc}
\RequirePackage[T1]{fontenc}
\RequirePackage{textcomp}
\RequirePackage{tgpagella,qpxmath}
\RequirePackage{tgheros}
%\RequirePackage[scaled=.88]{DejaVuSansMono}
%%%\RequirePackage[scaled=1.05]{zlmtt}% ist lmodern!
\RequirePackage[ttdefault=true,scale=1.034]{AnonymousPro}
\ifPTB@serif\else\RequirePackage{sfmath}\fi
\fi
\ifPTB@serif
\renewcommand*\familydefault{\rmdefault}
\else
\renewcommand*\familydefault{\sfdefault}
\ifx\PTB@target@size\@empty\else % Sheet scaling is necessary
\RequirePackage{blowup}
\IfPackageAtLeastTF{blowup}{2022/09/19}{%
\ClassNoteNoLine{ptbposter}{%
Scaling the sheet from size `a0' to size `\PTB@target@size'}%
\ifPTBlandscape
\blowUp{target=\PTB@target@size,landscape}
\else
\blowUp{target=\PTB@target@size}
\fi
}{%
\ClassError{ptbposter}{%
You need version `2022/09/19' or newer of the \MessageBreak
`blowup' package to scale the document, but only \MessageBreak
version `\csname ver@blowup.sty\endcsname' \MessageBreak
is available
}{%
Install the latest version of `blowup'.
}%
\@@end
}
\fi
\RequirePackage[verbose]{geometry}% Papiergröße steht bereits fest (Standard: A0)
\ifdim\paperheight>\paperwidth
\setlength\PTB@scale@base{\paperheight}
\PTB@landscapefalse
\iftutex% LuaTeX oder XeTeX
\input{ptbposter-new-engines.clo}
\else
\setlength\PTB@scale@base{\paperwidth}
\PTB@landscapetrue
\input{ptbposter-old-engines.clo}
\fi
\let\eth=\relax
\RequirePackage{amsmath,array,ragged2e}
\setlength\PTB@default@fsize@base{0.0130170299199\PTB@scale@base}% 11pt bei A4
\setlength\PTB@default@afsize{0.0157550946737\PTB@scale@base}% 53.3pt bei A0
\setlength\PTB@default@tfsize{0.0315101893474\PTB@scale@base}% 106.6pt bei A0
\setlength\PTB@default@ffsize{0.00567538119577\PTB@scale@base}% 19.2pt bei A0
\newcommand*\scaleFontSizes[1]{%
\global\PTB@default@fsize=#1\PTB@default@fsize@base
}
\newcommand*\scaleTitleFontSize[1]{%
\PTB@tempdima=\PTB@default@tfsize
\PTB@tempdima=#1\PTB@tempdima
\PTB@tempdimb=1.2\PTB@tempdima
\xdef\titleFontSize{\noexpand\@setfontsize
\noexpand\titleFontSize{\the\PTB@tempdima}{\the\PTB@tempdimb}}%
}
\scaleFontSizes{1}% wird ggf. in Präambel noch mal geändert.
\scaleTitleFontSize{1}% wird ggf. in Präambel noch mal geändert.
\edef\authorFontSize{\noexpand\@setfontsize\noexpand\authorFontSize{%
\the\PTB@default@afsize}{\the\dimexpr1.2\PTB@default@afsize}}
\edef\footFontSize{\noexpand\@setfontsize\noexpand\footFontSize{%
\the\PTB@default@ffsize}{\the\dimexpr1.2\PTB@default@ffsize}}
\RequirePackage[svgnames]{xcolor}
\RequirePackage[dvipsnames,svgnames,x11names]{xcolor}
\RequirePackage{multicol,graphicx}
\ifxetex\else
......@@ -180,15 +194,11 @@
]{microtype}
\fi
\RequirePackage{babel}
\providecommand*\microtypesetup[1]{}
\AtEndOfClass{%
\shorthandon{"}%
\@tempswafalse
\iflanguage{ngerman}{\@tempswatrue}{%
\iflanguage{german}{\@tempswatrue}{}%
}
\if@tempswa
\ifPTB@german@
\shorthandon{"}%
\defineshorthand{"`}{\guillemotright}%
\defineshorthand{"'}{\guillemotleft}%
\fi
......@@ -215,92 +225,73 @@
\newcommand*\email[1]{\gdef\PTB@email{#1}}
\newcommand*\PTB@fax{}
\newcommand*\fax[1]{\gdef\PTB@fax{#1}}
\newcommand*\PTB@final@paper{}
\newcommand*\scaletoPaper[1]{\gdef\PTB@final@paper{#1}}
\newcommand*\PTB@logo{}
\newcommand*\logo[1]{\gdef\PTB@logo{#1}}
\ifPTB@useCMYK
\definecolor{PTBcolor}{cmyk}{1,0.32549,0.12549,0.12549}
% icc:model: Europe ISO Coated FOGRA27
\else
%%%\definecolor{PTBcolor}{rgb}{0,0.67451,0.87451}
\definecolor{PTBcolor}{HTML}{00ACDF}
%%%\definecolor{PTBcolor}{HTML}{00ACDF}
\definecolor{PTBcolor}{RGB}{0,155,206}% 2019
\fi
\RequirePackage[texcoord]{eso-pic}
\RequirePackage{pict2e,picture,ifdraft,booktabs}
\RequirePackage{qrcode}
\AddToShipoutPictureBG*{% Kopf (relativ zur oberen Blattkante)
\PTB@tempdima=-0.08023549218\PTB@scale@base
\put(\PTB@leftmargin,\PTB@tempdima){%
\includegraphics[width=.401\PTB@scale@base]{ptbposter-logo.pdf}}%
\PTB@tempdima=-0.125\PTB@scale@base
\put(\PTB@leftmargin,\PTB@tempdima){\parbox[c]{\textwidth}{%
\sffamily\titleFontSize\@title}}%
\PTB@tempdima=-0.159798150044\PTB@scale@base
\def\and{, }%
\put(\PTB@leftmargin,\PTB@tempdima){\sffamily\authorFontSize\@author}%
% hier wird \@thanks gefüllt
\PTB@tempdima=0.00168208578994\PTB@scale@base
\linethickness{\PTB@tempdima}\color{PTBcolor}
\PTB@tempdima=-0.0883095039717\PTB@scale@base
\put(\PTB@leftmargin,\PTB@tempdima){%
\line(1,0){\dimexpr\paperwidth-2\PTB@leftmargin}}%
% blauer Rahmen
\put(\PTB@leftmargin,\dimexpr-\textheight-2\PTB@textvsep-\PTB@topmargin)%
{\framebox(\dimexpr\textwidth+2\PTB@texthsep,%
\dimexpr\textheight+2\PTB@textvsep){}}%
}
\AddToShipoutPictureBG*{% Fuß (relativ zur unteren Kante des Textbereichs)
\AtTextLowerLeft{%
\put(-\PTB@texthsep,-\PTB@textvsep){%
\PTB@tempdimb=0.000420521447484\PTB@scale@base
\linethickness{\PTB@tempdimb}\normalcolor
\PTB@tempdima=-0.0420521447484\PTB@scale@base
\put(-.5\@wholewidth,\PTB@tempdima){%
\PTB@tempdima=0.0386879731686\PTB@scale@base
\PTB@tempdimb=0.00168208578994\PTB@scale@base
\ifx\PTB@qrcode\@empty
\color{PTBcolor}\framebox(\PTB@tempdima,\PTB@tempdima){}%
\else
\raisebox{0.7\height}{%
\qrcode[height=\PTB@tempdima,tight]{\PTB@qrcode}}%
\fi
\color{PTBcolor}
\hspace{\PTB@tempdimb}\raisebox{-\@wholewidth}{%
\rule{\dimexpr\PTB@tempdima+2\@wholewidth}%
{\dimexpr\PTB@tempdima+2\@wholewidth}}%
\hspace{\PTB@tempdimb}\framebox(\PTB@tempdima,\PTB@tempdima){}%
}
\PTB@tempdimb=-0.00841042894969\PTB@scale@base
\footFontSize\sffamily\normalcolor
\PTB@tempdima=0.122792262665\PTB@scale@base
\put(\PTB@tempdima,\PTB@tempdimb){%
\begin{tabular}[t]{@{}l@{}}
Physikalisch-Technische Bundesanstalt \\
Braunschweig und Berlin \\[\f@baselineskip]
\ifx\first@author\@empty\else \textbf{\first@author}\\\fi
\ifx\PTB@department\@empty\else \PTB@department\\\fi
\ifx\PTB@workingGroup\@empty\else \PTB@workingGroup\\\fi
\end{tabular}%
}
\PTB@tempdima=0.263246426125\PTB@scale@base
\put(\PTB@tempdima,\PTB@tempdimb){%
\begin{tabular}[t]{@{}ll@{}}
\ifx\PTB@street\@empty\else\multicolumn{2}{@{}l@{}}{\PTB@street}\\\fi
\ifx\PTB@location\@empty\else\multicolumn{2}{@{}l@{}}{\PTB@location}\\\fi
\ifx\PTB@phone\@empty\else Telefon:&\PTB@phone\\\fi
\ifx\PTB@fax\@empty\else Fax:&\PTB@fax\\\fi
\ifx\PTB@email\@empty\else E-Mail:&\href{mailto:\PTB@email}{\PTB@email}\\\fi
\multicolumn{2}{@{}l@{}}{\href{http://www.ptb.de/}{www.ptb.de}}
\end{tabular}%
}
\PTB@tempdima=0.378469302736\PTB@scale@base
\put(\PTB@tempdima,\PTB@tempdimb){%
\begin{tabular}[t]{@{}l@{}}
\@thanks % wurde bei der Ausführung von \@author gefüllt.
\end{tabular}%
}
}
}
% == Emulieren einiger eso-pic-Befehle, um den Inhalt skalierbar zu machen ==
%%% TODO: eso-pic ändern?
\RequirePackage{atbegshi}
\newcommand\PTB@AtBeginShipoutUpperLeft[1]{%
\AtBeginShipout{\AtBeginShipoutUpperLeft{#1}}%
}
\newcommand\PTB@AtBeginShipoutUpperLeftForeground[1]{%
\AtBeginShipout{\AtBeginShipoutUpperLeftForeground{#1}}%
}
\newcommand\PTB@AddToShipoutPictureBG{%
\@ifstar{\PTB@AtBeginShipoutUpperLeft}%
{\PTB@AtBeginShipoutUpperLeft}%
}
\newcommand\PTB@AddToShipoutPictureFG{%
\@ifstar{\PTB@AtBeginShipoutUpperLeftForeground}%
{\PTB@AtBeginShipoutUpperLeftForeground}%
}
\newcommand\PTB@AtPageUpperLeft[1]{%
\put(0,0){#1}%
}
\newcommand\PTB@AtPageLowerLeft[1]{%
\put(0,-\paperheight){#1}%
}
\newcommand\PTB@AtPageCenter[1]{\PTB@AtPageUpperLeft{%
\put(.5\paperwidth,-.5\paperheight){#1}}%
}
\newcommand\PTB@AtTextUpperLeft[1]{%
\begingroup
\@tempdima=1in\relax
\if@twoside
\ifodd\c@page
\advance\@tempdima\oddsidemargin
\else
\advance\@tempdima\evensidemargin
\fi
\else
\advance\@tempdima\oddsidemargin
\fi
\@tempdimb=-1in\relax
\advance\@tempdimb-\topmargin
\advance\@tempdimb-\headheight
\advance\@tempdimb-\headsep
\PTB@AtPageUpperLeft{%
\put(\@tempdima,\@tempdimb){#1}%
}%
\endgroup
}
\newcommand\PTB@AtTextLowerLeft[1]{%
\PTB@AtTextUpperLeft{\put(0,-\textheight){#1}}%
}
% --------------------------------------------------------------------
\RequirePackage{pict2e,picture,ifdraft,booktabs}
\RequirePackage{varwidth,qrcode}
% ===== Behandlung der Autoren (siehe ptb-abstracts.sty ) =====
\newcommand*\first@author{}
......@@ -323,8 +314,11 @@
\begingroup
\unrestored@protected@xdef\@thefnmark{#1}%
\endgroup
%\show\@thefnmark
\@footnotemark}
\@footnotemark}
\newcommand\PTB@isnum[1]{%
\if!\ifnum9<1#1!\else_\fi\expandafter\@firstoftwo
\else\expandafter\@secondoftwo\fi}%
\newcommand\Author{%
\begingroup
......@@ -370,8 +364,13 @@
\if@tempswa
\g@addto@macro\@author{\PTB@fnmark{,}}%
\fi
\expandafter\g@addto@macro\expandafter\@author
\expandafter{\expandafter\thanks\expandafter{\PTB@tempe}}%
\PTB@isnum{\PTB@tempe}{%
\expandafter\g@addto@macro\expandafter\@author%
\expandafter{\expandafter\PTB@fnmark\expandafter{\PTB@tempe}}%
}{%
\expandafter\g@addto@macro\expandafter\@author%
\expandafter{\expandafter\thanks\expandafter{\PTB@tempe}}%
}%
\fi
\endgroup
}
......@@ -388,112 +387,98 @@
\endgroup
}%
\renewcommand*\labelitemi{$\m@th\circ$}
\renewcommand*\labelitemii{\textbullet}
\renewcommand*\labelitemiii{$\m@th\diamond$}
\renewcommand*\labelitemiv{$\m@th\triangleright$}%
%\renewcommand*\labelitemi{\textbullet}
%\renewcommand*\labelitemii{\Huge$\m@th\circ$}
%\renewcommand*\labelitemii{\textasteriskcentered}
%\renewcommand*\labelitemii{\textperiodcentered}
%\renewcommand*\labelitemii{$\m@th\diamond$}
%\renewcommand*\labelitemii{$\m@th\triangleright$}%
\newcommand*\PTB@scaletoPaper[1]{%
\begingroup
\c@PTB@tempcnta=\paperheight
\iso@paper{#1}%
\c@PTB@tempcntb=\paperheight
\c@PTB@tempcnta=\dimexpr \c@PTB@tempcntb sp * 1000 / \c@PTB@tempcnta %
\global\mag\c@PTB@tempcnta
\endgroup
\ifdim\paperheight>\paperwidth
\setlength\PTB@scale@base{\paperheight}
\PTBlandscapefalse
\else
\setlength\PTB@scale@base{\paperwidth}
\PTBlandscapetrue
\fi
\RequirePackage{relsize}% ???
\renewcommand*\RSpercentTolerance{0}%
\renewcommand*\RSlargest{5000pt}% important!
\renewcommand*\RSsmallest{0pt}
\newcommand*\scaleFontSizes[1]{%
\global\PTB@default@fsize=#1\PTB@default@fontsize@base
}
\@onlypreamble\scaleFontSizes
\newcommand*\scaleTitleFontSize[1]{%
\global\PTB@default@title@fontsize=#1\PTB@default@title@fontsize@base
}
\@onlypreamble\scaleTitleFontSize
\AtBeginDocument{%
\setlength\PTB@default@title@fontsize{0.0315101893474\PTB@scale@base}% 106.6pt bei A0
\newcommand*\PTB@scaleTitleFontSize[1]{%
\PTB@tempdima=\PTB@default@title@fontsize
\PTB@tempdima=#1\PTB@tempdima
\PTB@tempdimb=1.14\PTB@tempdima
\xdef\titleFontSize{\noexpand\@setfontsize
\noexpand\titleFontSize{\the\PTB@tempdima}{\the\PTB@tempdimb}}%
}
\def\authorFontSize{\@setfontsize\authorFontSize{%
\PTB@default@author@fontsize}{1.2\PTB@default@author@fontsize}}
\def\footFontSize{\@setfontsize\footFontSize{%
\PTB@default@foot@fontsize}{1.2\PTB@default@foot@fontsize}}
\newcommand*\scaleFont[1]{%
\PTB@tempdima=\f@size pt \PTB@tempdima=#1\PTB@tempdima
\PTB@tempdimb=\f@baselineskip \PTB@tempdimb=#1\PTB@tempdimb
\edef\f@size{\strip@pt\PTB@tempdima}%
\edef\f@baselineskip{\the\PTB@tempdimb}%
\fontsize{\f@size}{\f@baselineskip}%
\selectfont
}
\ifcase \PTB@layout
% 0
\input{ptbposter-2018.clo}
\or % 1
\input{ptbposter-2020.clo}
\fi
\scaleFontSizes{1}% wird ggf. in Präambel noch mal geändert.
\scaleTitleFontSize{1}% wird ggf. in Präambel noch mal geändert.
\AtEndPreamble{%
% Skalierungen in der Präambel sind passiert.
%%%\makeatletter\input{ptbposter-size.clo}\makeatother
%%%\makeatletter\input{ptbposter.patch}\makeatother% weiter vorn! Test auf Version
\changefontsizes{\the\PTB@default@fsize}%
\KOMAoptions{headings=normal,parskip=half} \normalsize
\setlength\PTB@texthsep{.75em}%
\setlength\PTB@textvsep{.75em}%
\ifx\@author\@empty
\setlength\PTB@topmargin{0.152\PTB@scale@base}%
\else
\setlength\PTB@topmargin{0.180824222418\PTB@scale@base}%
\fi
\ifPTB@landscape
\setlength\PTB@framewidth{0.950378471315\PTB@scale@base}% 3215pt (1130mm) bei A0
\ifx\@author\@empty
\setlength\PTB@frameheight{0.490824222418\PTB@scale@base}% 1565pt (550mm) bei A0
\else
\setlength\PTB@frameheight{0.462\PTB@scale@base}% 1565pt (550mm) bei A0
\fi
\else
\setlength\PTB@framewidth{0.656013458076\PTB@scale@base}% 2219pt (780mm) bei A0
\ifx\@author\@empty
\setlength\PTB@frameheight{0.769\PTB@scale@base}% 2504pt (880mm) bei A0
\else
\setlength\PTB@frameheight{0.740117747573\PTB@scale@base}% 2504pt (880mm) bei A0
\fi
\fi
\KOMAoptions{headings=normal,parskip=half}
\normalsize
\setlength\PTB@texthsep{0.0062164016879\PTB@scale@base}% 21.03029pt (A0)
\setlength\PTB@textvsep{\PTB@texthsep}% 21.03029pt (A0)
\setlength\PTB@maxtitleheight{0.057\PTB@scale@base}%
\setlength\PTB@framethickness{0.00168208578994\PTB@scale@base}%
\setlength\fboxsep{0.00355\PTB@scale@base} % 3pt (A4), 12pt (A0)
\setlength\fboxrule{0.0004722\PTB@scale@base}% 0.4pt (A4), 1.6pt (A0)
\setlength\PTB@leftmargin{0.5\dimexpr\paperwidth-\PTB@framewidth}%
\edef\PTB@tempa{%
\noexpand\newgeometry{%
columnsep=1.5em,hcentering,%
top=\the\dimexpr\PTB@topmargin+\PTB@textvsep,%
textwidth=\the\dimexpr\PTB@framewidth-2\PTB@texthsep,%
textheight=\the\dimexpr\PTB@frameheight-2\PTB@textvsep}%
\noexpand\normalsize
}%
\iftrue
\PTB@tempa
\else
\paperwidth=2392.87677pt %
\paperheight=3383.03267pt %
\textwidth=2175.25656pt %
\textheight=2437.77509pt %
\oddsidemargin=36.54012pt %
\evensidemargin=36.54012pt %
\topmargin=535.06314pt %
\headheight=17.0pt %
\headsep=20.40001pt %
\topskip=11.0pt %
\footskip=47.6pt %
\marginparwidth=59.7508pt %
\marginparsep=12.8401pt %
\columnsep=88.06537pt %
\fi
\PTB@tempdima=\dimexpr\PTB@leftmargin+\PTB@texthsep %
\geometry{%
verbose,
top=\dimexpr\PTB@topmargin+\PTB@textvsep,%
left=\PTB@tempdima,
right=\PTB@tempdima,
textheight=\dimexpr\PTB@frameheight-2\PTB@textvsep,%
columnsep=1.5em,hcentering}
\ifx\PTB@final@paper\@empty\else\PTB@scaletoPaper{\PTB@final@paper}\fi
\setlength\emergencystretch{3em}%
\@ifpackageloaded{multicol}{%
\def\setemergencystretch#1#2{}%
}{}%
\RequirePackage{paralist}
\newcommand*\PTB@begin@list[1]{%
%\PTB@tempdima=\parindent
%\PTB@tempdimb=\parskip
\@nameuse{#1}%
%\parindent=\PTB@tempdima
%\parskip=\PTB@tempdimb
}
\def\enumerate{%
\PTB@begin@list{compactenum}%
}
\def\itemize{%
\PTB@begin@list{compactitem}%
}
\def\description{%
\PTB@begin@list{compactdesc}%
}
\let\enditemize\endcompactitem
\let\endenumerate\endcompactenum
\let\enddescription\endcompactdesc
\pltopsep=\medskipamount
\plitemsep=\medskipamount
\setlength\leftmargini{1.5em}
\setlength\leftmarginii{1.1em}
\setlength\leftmarginiii{1.1em}
\setlength\leftmarginiv{1.1em}
\setlength\labelsep{.5em}
\RequirePackage{enumitem}
\setlist{leftmargin=.6em,labelsep=.3em,nosep,topsep=.5em,itemsep=.25em}
\setlist[1]{labelindent=1em}
}
\KOMAoptions{captions=oneline}
......@@ -540,7 +525,7 @@
beforeskip=-2ex \@plus -1ex \@minus -.2ex,%
afterskip=0.4ex \@plus.2ex,%
tocindent=0pt,%
tocnumwidth=1.5em%
tocnumwidth=1.5em %
]{section}
\RedeclareSectionCommand[%
style=section,%
......@@ -549,7 +534,7 @@
beforeskip=-1.2ex\@plus -1ex \@minus -.2ex,%
afterskip=0.1ex \@plus .2ex,%
tocindent=1.5em,%
tocnumwidth=2.3em%
tocnumwidth=2.3em %
]{subsection}
\RedeclareSectionCommand[%
style=section,%
......@@ -558,7 +543,7 @@
beforeskip=-1.2ex\@plus -1ex \@minus -.2ex,%
afterskip=0.1ex \@plus .2ex,%
tocindent=3.8em,%
tocnumwidth=3.2em%
tocnumwidth=3.2em %
]{subsubsection}
\RedeclareSectionCommand[%
style=section,%
......@@ -567,7 +552,7 @@
beforeskip=1.2ex \@plus1ex \@minus.2ex,%
afterskip=-1em,%
tocindent=7.0em,%
tocnumwidth=4.1em%
tocnumwidth=4.1em %
]{paragraph}
\RedeclareSectionCommand[%
style=section,%
......@@ -576,10 +561,23 @@
beforeskip=1.2ex \@plus1ex \@minus .2ex,%
afterskip=-1em,%
tocindent=10em,%
tocnumwidth=5em%
tocnumwidth=5em %
]{subparagraph}
}
% non-floating figure/table
\renewenvironment{figure}[1][]{%
\def\@captype{figure}%
\par\nobreak}
{\par\nobreak}
\renewenvironment{table}[1][]{%
\def\@captype{table}%
\par\nobreak}
{\par\nobreak}
\let\bib@heading=\relax % no head line for bibliography (\refname)
\setcounter{secnumdepth}{-2}
\renewcommand*\maketitle[1][1]{}
\renewcommand*\tableofcontents{}
......
File added
\documentclass[%
,sanserif
,a4paper
]{ptbposter}
\usepackage[
%,boxlayout=0 % 0, 1, 2, 3 -- default: 2
]{ptbposter-tcb}
\phone{+49-30-3481-7316}
\fax{+49-30-3481-7503}
\email{Rolf.Niepraschk@ptb.de}
\workingGroup{7.54 Vakuummetrologie}
\department{7.5 Wärme und Vakuum}
\location{10587 Berlin}
\street{Abbestraße 2--12}
\QRcode{http://www.ptb.de/cms/fachabteilungen/abt7/fb-75/ag-754.html}
\Author{Rolf}{Niepraschk}
%\logo{Logo754.pdf}
\colorlet{boxBackground}{OliveGreen!10}
\posterSet{showframe=true,columns=2}
%\posterSet{spacing=.01\paperwidth}
\scaleFontSizes{.7}% global font scaling
\newcommand*\cmd[1]{\texttt{\textbackslash #1}}
\title{Poster-Test (\texttt{ptbposter-tcb.sty}) -- Nr.~1}
\begin{document}
\begin{posterboxenv}[adjusted title=Lokale Schriftskalierung]%
{name=A1,column=1,below=top}
\relscale{.9}% local font scaling
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
\end{posterboxenv}
\begin{posterboxenv}[adjusted title=Das ist Box A2]%
{name=A2,column=1,below=A1}
\begin{minipage}[c]{.485\linewidth}
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
\end{minipage}
\hfill
\begin{minipage}[c]{.485\linewidth} \centering
\textcolor{red!30}{\rule{.8\linewidth}{.6\linewidth}} \\
\vspace{2ex}
\textcolor{red!30}{\rule{.8\linewidth}{.6\linewidth}}
\end{minipage}
\begin{minipage}[c][.14\linewidth][b]{\linewidth}
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla Blabla
\end{minipage}
\end{posterboxenv}
\begin{posterboxenv}[adjusted title=Das \LaTeX-Paket »\texttt{ptbposter-tcb}«,%
text fill]{name=A3,column=1,span=2,below=A2}
\raggedcolumns
\begin{multicols}{2}
\section{Paketoption}
\begin{verbatim}
\usepackage[boxlayout=2]% 0, 1, 2, 3 (default: 2)
{ptbposter-tcb}
\end{verbatim}
Wählt unterschiedliche Arten von Boxen aus.
\section{Makros}
\verb|\posterSet|: Setzt Parameter zur Boxenpositionierung:
\begin{itemize}
\item \verb!showframe=true|false! (Informationen zur Orientierung)
\item \verb!columns=n!: Anzahl der Spalten
\item \verb!rows=n!: Anzahl der Zeilen
\item \verb!spacing=n!: Abstand zwischen den Boxen und zum Rand
\end{itemize} \columnbreak
\section{Boxparameter}
\begin{verbatim}
\begin{posterboxenv}[adjusted title=Blabla,text fill]%
{name=ABC,column=x,row=y,span=m,rowspan=n}
\end{verbatim}
\begin{itemize}
\item "`\verb!adjusted title=!"': Titel
\item "`\verb!text fill!"': Verhalten wie "`\verb!minipage!
\item "`\verb!name=!"': Knotenname als Bezug bei Positionierung
\item "`\verb!column=x,row=y!"': Position auf dem Raster
\item "`\verb!span=m,rowspan=n!"': Breite und Höhe
\end{itemize}
\bigskip
Näheres siehe Dokumentation zu "`tcolorbox"'~\cite{TCOLORBOX}.
\end{multicols}
\end{posterboxenv}
\begin{posterboxenv}[adjusted title=\cmd{vfill}-Beispiel,text fill]
{name=A4,column=1,between=A3 and bottom} \bfseries
X \dotfill X
\vfill% erfordert Option "text fill"
X \dotfill X
\vfill
X \dotfill X
\end{posterboxenv}
% =======================================================================================
\begin{posterboxenv}[adjusted title=figure-Umgebung (nicht gleitend)]%
{name=B1,column=2,below=top}
\begin{figure} \centering
\textcolor{red!30}{\rule{.56\linewidth}{.42\linewidth}}
\caption{Ein Bild}
\end{figure}
\end{posterboxenv}
\begin{posterboxenv}[adjusted title=\cmd{tcbhighmath}]%
{name=B2,column=2,below=B1}
For all natural number $n$ it holds:
\begin{equation}
\tcbhighmath{\sum\limits_{i=1}^n i = \frac{n(n+1)}{2}.}
\end{equation}
\end{posterboxenv}
\begin{posterboxenv}[adjusted title=table-Umgebung (nicht gleitend),%
valign=center]{name=B3,column=2,between=B2 and A3}
\begin{table} \centering
\begin{multicols}{2}
\setlength\extrarowheight{.5ex}
\begin{tabular}{>{\bfseries}l<{:}r<{\,mm}!{$\times$}r<{\,mm}}
letter & 216 & 279 \\
legal & 216 & 356 \\
executive & 184 & 267 \\
A8 & 52 & 74 \\
A7 & 74 & 105 \\
A6 & 105 & 148 \\
\end{tabular}
\begin{tabular}{>{\bfseries}l<{:}r<{\,mm}!{$\times$}r<{\,mm}}
A5 & 148 & 210 \\
A4 & 210 & 297 \\
A3 & 297 & 420 \\
A2 & 420 & 594 \\
A1 & 594 & 841 \\
A0 & 841 & 1189 \\
\end{tabular}
\end{multicols}
\caption{Papiergrößen}
\end{table}
\end{posterboxenv}
\begin{posterboxenv}[adjusted title=\refname]%
{name=B4,column=2,above=bottom}
\begin{thebibliography}{99}
\bibitem{TCOLORBOX} Thomas F.~Sturm: The tcolorbox package, Library poster,
S.~438--451,
\url{http://mirrors.ctan.org/macros/latex/contrib/tcolorbox/tcolorbox.pdf}
\newblock
\bibitem{TIKZ} Till Tantau: TikZ \& PGF Manual,
\url{http://mirrors.ctan.org/graphics/pgf/base/doc/pgfmanual.pdf}
\newblock
\bibitem{TIKZ.MINI} Jacques~Crémer: A very minimal introduction to TikZ,
\url{http://cremeronline.com/LaTeX/minimaltikz.pdf}
\end{thebibliography}
\end{posterboxenv}
\end{document}
File added
\documentclass[%
%,sanserif
%,a4paper
,layout2018
]{ptbposter}
\usepackage[
boxlayout=2 % 0, 1, 2, 3 -- default: 2
]{ptbposter-tcb}
\phone{+49-30-3481-7316}
\fax{+49-30-3481-7503}
\email{Rolf.Niepraschk@ptb.de}
\workingGroup{7.54 Vakuummetrologie}
\department{7.5 Wärme und Vakuum}
\location{10587 Berlin}
\street{Abbestraße 2--12}
\QRcode{http://www.ptb.de/cms/fachabteilungen/abt7/fb-75/ag-754.html}
\Author{Rolf}{Niepraschk}
%\logo{Logo754.pdf}
\colorlet{backgroundTop}{IndianRed3!10}
\colorlet{backgroundBottom}{IndianRed3!90}
\posterSet{showframe=false,columns=3,rows=3}
\title{Poster-Test (\texttt{ptbposter-tcb.sty}) -- Nr.~2}
\begin{document}
\begin{posterboxenv}[adjusted title=John Lennon]{name=John,column=1}
\includegraphics[width=\linewidth]{John.png}
\end{posterboxenv}
\begin{posterboxenv}[adjusted title=Paul McCartney]{name=Paul,column=3}
\includegraphics[width=\linewidth]{Paul.png}
\end{posterboxenv}
\begin{posterboxenv}{name=Beatles,column=2,at=middle}
\includegraphics[width=\linewidth]{The_Beatles_official_logo.pdf}
\end{posterboxenv}
\begin{posterboxenv}[adjusted title=George Harrison]{name=George,column=1,above=bottom}
\includegraphics[width=\linewidth]{George.png}
\end{posterboxenv}
\begin{posterboxenv}[adjusted title=Ringo Starr]{name=Ringo,column=3,above=bottom}
\includegraphics[width=\linewidth]{Ringo.png}
\end{posterboxenv}
\begin{scope}[PTBcolor,line width=1ex,>={Latex[length=4ex]}]
\draw[->,out=-90,in=150] (TCBPOSTER@John.south) to
([yshift=1.5em]TCBPOSTER@Beatles.west);
\draw[->,out=-90,in=30] (TCBPOSTER@Paul.south) to
([yshift=1.5em]TCBPOSTER@Beatles.east);
\draw[->,out=90,in=210] (TCBPOSTER@George.north) to
([yshift=-1.5em]TCBPOSTER@Beatles.west);
\draw[->,out=90,in=-30] (TCBPOSTER@Ringo.north) to
([yshift=-1.5em]TCBPOSTER@Beatles.east);
\end{scope}
\end{document}
# Rolf Niepraschk, 2021-09-29, Rolf.Niepraschk@ptb.de
.SUFFIXES : .tex .ltx .dvi .ps .pdf .eps .bbx .cbx .dbx .glo .gls .bcf .bbl .bib
MAIN = publikationen_vakuum_PTB
LATEX = lualatex
BIBTEX = biber
BIBTEX_PARAMS = --isbn-normalise --validate-datamodel
EGREP = grep -E
ADDINPUTS =
BIBS = $(MAIN).bib journal-short-names.bib
BIBTEX_WARN = run Biber on the file
RERUN_WARN1 = Rerun to get cross-references right
RERUN_WARN2 = Please rerun LaTeX
RERUN_WARN3 = There were undefined references
RERUN_WARN4 = Linenumber reference failed
RERUN_WARNINGS = ($(RERUN_WARN1)|$(RERUN_WARN2)|$(RERUN_WARN3)|$(RERUN_WARN4))
MAX_LTX_RUNS = 5
all : pdf
pdf : $(MAIN).pdf
$(MAIN).pdf : $(MAIN).tex $(BIBS) $(ADDINPUTS)
$(LATEX) $<
$(BIBTEX) $(BIBTEX_PARAMS) $(basename $<)
# if $(EGREP) '$(BIBTEX_WARN)' $(basename $<).log > /dev/null; \
# then $(BIBTEX) $(BIBTEX_PARAMS) $(basename $<); $(LATEX) $<; fi;
$(LATEX) $<
@for (( i=0; i < $(MAX_LTX_RUNS); i++ )) do \
if $(EGREP) '$(RERUN_WARNINGS)' $(basename $<).log > /dev/null; \
then $(LATEX) $<; fi; \
done
clean :
$(RM) $(addprefix $(MAIN), .log .aux .blg .toc .bbl .glo .gls .bcf)
veryclean : clean
$(RM) $(addprefix $(MAIN), .pdf)
# Publikationsliste der »Arbeitsgruppe Vakuummetrologie«
Die hier gepflegte BibTeX-Datei
[`publikationen_vakuum_PTB.bib`](publikationen_vakuum_PTB.bib) enthält die
Publikationen, die im Rahmen der Arbeit der »Arbeitsgruppe Vakuummetrologie«
(früher: »Laboratorium für Vakuumphysik«) veröffentlicht wurden. Ihr Inhalt
basiert auf den Angaben aus dem Word-Dokument
[`outdated/publikationen_vakuum_PTB.docx`](outdated/publikationen_vakuum_PTB.docx).
Die Syntax der BibTeX-Datei folgt den Regeln des LaTeX-Paketes
[`biblatex`](http://mirrors.ctan.org/macros/latex/contrib/biblatex/doc/biblatex.pdf)
und die Zeichenkodierung ist durchgehend Unicode (UTF-8). In dem
LaTeX-Dokument [`publikationen_vakuum_PTB.tex`](publikationen_vakuum_PTB.tex)
findet eine Filterung nach Artikeln und artikel-ähnlichen Publikationen
einerseits und Büchern und vergleichbaren Publikationen anderseits statt.
Beim Hinzufügen von neuen Einträgen zur Datei `publikationen_vakuum_PTB.bib`
sollte man sich an ähnlichen schon vorhandenen orientieren. Für einige der
international bekannten Zeitschriften wurden Kürzel definiert und verwendet
(z.B. »JPE« für »Journal of Physics E«). Sie sind in der benutzten Datei
[`journal-short-names.bib`](journal-short-names.bib) enthalten und führen zu
den standardisierten Abkürzungen der Zeitschriftennamen (z.B. »J. Phys. E«). Um
nur eine einzige in sich konsistente bib-Datei Interessenten anzubieten, wurde
der Inhalt von `journal-short-names.bib` in diese direkt eingefügt. Alternativ
dazu könnte auch der Inhalt von
[`journal-long-names.bib`](journal-long-names.bib) genommen werden, um die
langen Zeitschriftennamen zu erhalten.
## Erzeugung der pdf-Ausgabedatei
In einer Unix-ähnlichen Umgebung mit aktueller TeX-Installation sowie den
Hilfsprogrammen »Gnu Make« und »Gnu Grep« ist ein einfacher Aufruf
```bash
make
```
ausreichend, um die Ausgabedatei
[`publikationen_vakuum_PTB.pdf`](publikationen_vakuum_PTB.pdf) zu erzeugen.
Alternativ sind die folgenden Einzelschritte möglich:
```bash
lualatex publikationen_vakuum_PTB.tex
biber --isbn-normalise --validate-datamodel publikationen_vakuum_PTB
lualatex publikationen_vakuum_PTB.tex
lualatex publikationen_vakuum_PTB.tex
```
Grundsätzlich wären statt `lualatex`- auch `pdflatex`-Aufrufe möglich, aber
wegen der besseren Unicode-Unterstützung sollte `lualatex` bevorzugt werden.
[Rolf Niepraschk](mailto:Rolf.Niepraschk@ptb.de), Oktober 2021