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 1222 additions and 95 deletions
\documentclass[%
,ngerman
,twoside
%,serif
,sanserif
,BLN
%,BS
%,head0
,head1
%,head2
%,visualize
]{ptbletter}
\yourref{4711-0815}
\yourmail{2015-05-08}
\handledby{Rolf Niepraschk}
\myref{7.5-1V-15-05}
\mymail{2015-05-14}
\myphone{7316}
\myfax{7777}
\myemail{Rolf.Niepraschk@ptb.de}
\colorlet{bgTextColor}{red!20}
\bgText*{ENTWURF}
% Ausblenden des Fußbereiches
% \setkomavar{firstfoot}{}
\date{2017-01-17}
\begin{document}
\begin{letter}{%
Ellen Bogen \\
Dorfstraße 1\\
12345 Musterhausen
}
\subject{Die \LaTeX-Dokumentenklasse "`ptbletter"'}
\opening{Sehr geehrte Frau Bogen,}
die neue \LaTeX-Dokumentenklasse "`ptbletter"' ist fertig. Mit ihr können
Briefe nach den offiziellen Vorgaben der PTB gesetzt werden. Zum Setzen eines
Briefes muss die Datei "`\texttt{ptbletter.cls}"' dem \TeX"=Compiler zugänglich
sein, d.\,h.\ sie muss sich im \TeX"=Suchpfad befinden. Näheres dazu ist der
Dokumentation der benutzten \TeX"=Distribution zu entnehmen.
Die \LaTeX-Dokumentenklasse "`ptbletter"' unterstützt die folgenden
Klassenoptionen:
\begin{itemize}
\item \textbf{BLN}: Wählt die für den Standort Berlin gültigen Angaben
(Standard).
\item \textbf{BS}: Wählt die für den Standort Braunschweig gültigen Angaben.
\item \textbf{serif}: Wählt die Serifenschrift für den Textbereich (Standard).
\item \textbf{sanserif}: Wählt die serifenlose Schrift für den Textbereich.
\item \textbf{de}, \textbf{german}, \textbf{ngerman}: Trennregeln für die neue
deutsche Rechtschreibung werden benutzt (Standard).
\item \textbf{en}, \textbf{english}: Trennregeln für die englische Sprache
werden benutzt.
\item \textbf{head0}, kein Kopf
\item \textbf{head1}, PTB-Kopf mit Logo (Standard)
\item \textbf{head2}, PTB-Kopf ohne Logo
\item \textbf{visualize}, Visualisierung interner Parameter (zu Debug-Zwecken)
\end{itemize}
\noindent Alle anderen Optionen werden an die intern benutzte Dokumentenklasse
"`scrlttr2"' weitergeleitet. Das Papierformat ist entsprechend der Vorgabe auf
"`A4"' festgelegt. Als Eingabe-Kodierung wird ausschließlich "`UTF-8"'
unterstützt.
Der Text, der dem Makro \verb|\bgText| übergeben wird, erscheint auf jeder
Seite auf dem Textbereich als hellgrauer Hintergrunddruck schräg in großer
Schrift. Wird die Sternvariante (\verb|\bgText*|) benutzt, erscheint der
Hintergrunddruck nur auf der ersten Seite. Die Farbe dieses Textes kann durch Definition der Farbe »bgTextColor« geschehen, z.\,B.\ so:
\verb|\definecolor{bgTextColor}{gray}{0.9}|
%\closing{\MHG}
%\closing{\MFg}
\closing{\MFG}
\ps PS: Viel Spaß beim \TeX{}en!
\encl{
\begin{itemize}
\item alter Fahrschein
\item Tüte Mottenpulver
\item Glückspfennig
\end{itemize}
}
\cc{Präsident\\Fachbereichsleiter\\Arbeitsgruppenleiter}
\end{letter}
\end{document}
% Rolf Niepraschk, Rolf.Niepraschk@ptb.de
\ProvidesFile{ptbletter-new-engines.clo}%
[2017/12/05 v0.1b PTB-Brief -- new engines (RN)]
\RequirePackage{fontspec}
\RequirePackage{unicode-math}
\setromanfont{texgyrepagella}[
Ligatures=TeX,
Scale=MatchUppercase,
Extension=.otf,
UprightFont=*-regular,
BoldFont=*-bold,
ItalicFont=*-italic,
BoldItalicFont=*-bolditalic]
\setsansfont{texgyreheros}[
Ligatures=TeX,
Extension=.otf,
UprightFont=*-regular,
BoldFont=*-bold,
ItalicFont=*-italic,
BoldItalicFont=*-bolditalic]
\setmonofont{DejaVuSansMono}[%
Scale=0.9,
UprightFont = *,
ItalicFont=*-Oblique,
BoldFont=*-Bold,
BoldItalicFont=*-BoldOblique,
Extension = .ttf]
\RequirePackage{newunicodechar}
\newunicodechar{^^^^20ac}{\officialeuro}
\endinput
% Rolf Niepraschk, Rolf.Niepraschk@ptb.de
\ProvidesFile{ptbletter-old-engines.clo}%
[2017/12/05 v0.1b PTB-Brief -- old engines (RN)]
\RequirePackage[utf8]{inputenc}
\RequirePackage[T1]{fontenc}
\usepackage[scaled=0.9]{DejaVuSansMono}
\RequirePackage{textcomp}
\RequirePackage{mathpazo}
\RequirePackage{tgpagella}
\RequirePackage{tgheros}
\endinput
% Rolf Niepraschk, Rolf.Niepraschk@gmx.de
\setcounter{errorcontextlines}{100} \listfiles
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesClass{ptbletter}[2023/04/21 v0.4c PTB-Brief-Klasse (RN)]
\let\ptb@tempdima=\@ovxx
\let\ptb@tempdimb=\@ovyy
\let\ptb@tempdimc=\@ovdx
\let\ptb@tempdimd=\@clnwd
\let\ptb@tempdime=\@clnht
\let\ptb@tempdimf=\@dashdim
\newif\ifPTB@useCMYK \PTB@useCMYKfalse % vorerst
\RequirePackage{graphicx,xcolor}
\ifPTB@useCMYK
\definecolor{PTBcolor}{cmyk}{1,0.32549,0.12549,0.12549}% ???
% icc:model: Europe ISO Coated FOGRA27
\else
\definecolor{PTBcolor}{RGB}{0,155,206}
\fi
\newif\ifptb@BLN \ptb@BLNtrue
\newif\ifptb@serif \ptb@seriftrue
\newcommand*\ptb@lang{main=ngerman}
\newcount\ptb@head \ptb@head=1 %
\newcommand*\ptb@tempa{}
\newcommand*\ptb@tempb{}
\DeclareOption{german}{\def\ptb@lang{main=ngerman}}
\DeclareOption{ngerman}{\def\ptb@lang{main=ngerman}}
\DeclareOption{de}{\def\ptb@lang{main=ngerman}}
\DeclareOption{english}{\def\ptb@lang{main=english}}
\DeclareOption{en}{\def\ptb@lang{main=english}}
\DeclareOption{BS}{\ptb@BLNfalse}
\DeclareOption{BLN}{\ptb@BLNtrue}
\DeclareOption{sanserif}{\ptb@seriffalse}
\DeclareOption{serif}{\ptb@seriftrue}
\DeclareOption{head0}{\ptb@head=0}
\DeclareOption{head1}{\ptb@head=1}
\DeclareOption{head2}{\ptb@head=2}
\DeclareOption{visualize}{%
\PassOptionsToClass{\CurrentOption}{scrlttr2}
\AtEndOfClass{%
\showfields{head,address,location,refline,foot}%
%\showfields{refline}%
\addtokomafont{field}{\color{lightgray}}%
\setshowstyle{rule}%
%\setshowstyle{edges}%
%\setshowstyle{frame}% default
}
}
%\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrlttr2}}
\ExecuteOptions{pagesize}
\ProcessOptions\relax
\PassOptionsToPackage{usegeometry=true}{typearea}
\LoadClass[%
,fontsize=11pt
%,DINmtext
,backaddress=plain
,refline=nodate
,enlargefirstpage
,pagenumber=no
,parskip=never
,firstfoot=true
]{scrlttr2}
\LoadLetterOption{DINmtext}
\RequirePackage[%
,verbose
,left=1in
,textwidth=165mm
]{geometry}
\raggedbottom
\RequirePackage{hyphsubst}% Trennregeln austauschen
\HyphSubstIfExists{ngerman-x-latest}{%
\HyphSubstLet{ngerman}{ngerman-x-latest}}{}
\HyphSubstIfExists{german-x-latest}{%
\HyphSubstLet{german}{german-x-latest}}{}
\RequirePackage{ifxetex,ifluatex,url,array,tabularx,picture}
\newif\ifXeOrLua \XeOrLuafalse
\ifxetex\XeOrLuatrue\else\ifluatex\XeOrLuatrue\fi\fi
\RequirePackage[right]{eurosym}
\ifXeOrLua% XeLaTeX oder luaLaTeX
\input{ptbletter-new-engines.clo}
\else
\input{ptbletter-old-engines.clo}
\fi
\def\tiny{\@setfontsize\tiny{7}{8.17}}
\ifptb@serif
\renewcommand*\familydefault{\rmdefault}
\else
\renewcommand*\familydefault{\sfdefault}
\fi
\let\texteuro=\officialeuro
\RequirePackage[\ptb@lang]{babel}
\RequirePackage{etoolbox,iflang,trimspaces}
\AtEndPreamble{%
\IfLanguageName{ngerman}{%
\RequirePackage[autostyle=true,german=guillemets,maxlevel=3]{csquotes}%
}{%
\RequirePackage[babel=once]{csquotes}
\useshorthands*{"}
}%
\MakeAutoQuote{»}{«}
\defineshorthand{"`}{\openautoquote}
\defineshorthand{"'}{\closeautoquote}\shorthandon{"}
}
\AtEndOfClass{%
\@ifpackageloaded{inputenc}{}{%
\catcode`=\active
\catcode`=\active
}%
}
\setplength{toaddrhpos}{72bp}
\setplength{toaddrvpos}{124bp}
\setplength{lochpos}{-354bp}% "-" --> vom linken Blattand aus
\setplength{locvpos}{146bp}% --> vom oberen Blattand aus
\setplength{locwidth}{212bp}
\setplength{locheight}{139bp}
\setplength{refvpos}{304bp}
%\setplength{refwidth}{40mm}
\setplength{refaftervskip}{\z@}
\setplength{firstheadhpos}{72bp}
\setplength{firstheadvpos}{50bp}
\setplength{firstheadwidth}{469bp}
\setplength{firstfoothpos}{72bp}
\setplength{firstfootvpos}{764bp}
\setplength{firstfootwidth}{\useplength{firstheadwidth}}
\setplength{subjectaftervskip}{23bp}
%\setplength{sigindent}{3em}
\setplength{sigbeforevskip}{3mm}%
\setlength{\textheight}{235mm}
\setlength{\footskip}{2mm}
\setlength{\footheight}{30bp}
%\widowpenalties 2 10000 0 %
\usepackage[defaultlines=2]{nowidow}
\setnowidow% keine einzelne Zeile am Seitenbeginn (keine "Hurenkinder")
% https://tex.stackexchange.com/questions/21983/how-to-avoid-page-breaks-inside-paragraphs
\let\raggedsignature=\raggedright
\removereffields
\addtokomafont{addressee}{\sffamily}
\setkomafont{refname}{\sffamily\tiny}
\setkomafont{refvalue}{\normalfont\footnotesize}
\setkomavar{firsthead}{%
\ifcase\ptb@head
\or% 1
\begin{picture}(0,30bp )
\unitlength=1bp % ???
\put(0,0) {%
\includegraphics[width=308bp]{PTB-logo-2015.pdf}%
}
\put(0,-5bp) {%
\linethickness{1bp}%
%\textcolor{PTBcolor}{\line(1,0){\linewidth}}%
\textcolor{PTBcolor}{\line(1,0){494bp}}%
}
\end{picture}
\or% 2
\begin{minipage}[b]{\linewidth}%
\sffamily\bfseries\huge%
Physikalisch-Technische Bundesanstalt\\[3bp]%
%%%\large
Braunschweig und Berlin
\end{minipage}%
\fi
}
\setkomavar{location}{%
\begingroup
\extrarowheight=-1bp %
\begin{tabular}%
{@{}>{\usekomafont{refname}}l<{:}@{~\,}>{\usekomafont{refvalue}}l@{}}
\usekomavar*{yourref} & \usekomavar{yourref}\\
\usekomavar*{yourmail} & \usekomavar{yourmail}\\
\usekomavar*{myref} & \usekomavar{myref}\\
\usekomavar*{mymail} & \usekomavar{mymail}\\
\multicolumn{2}{@{}l@{}}{} \\
\usekomavar*{handledby} & \usekomavar{handledby}\\
\usekomavar*{myphone} & \usekomavar{myphone}\\
\usekomavar*{myfax} & \usekomavar{myfax}\\
\usekomavar*{emailseparator} & \usekomavar{fromemail}\\
\multicolumn{2}{@{}l@{}}{} \\
\usekomavar*{date} & \usekomavar{date}
\end{tabular}
\endgroup
}
\setkomavar{firstfoot}{% TODO: engl/dt
\parbox{\useplength{firstfootwidth}}{%
\sffamily\tiny
\begin{tabular}{@{}l@{}}
\IfLanguageName{ngerman}{Hausadresse, Lieferanschrift:}{Domicile:} \\
\ifptb@BLN Abbestr. 2--12 \else Bundesallee 100 \fi \\
\ifptb@BLN 10587 Berlin \else 38116 Braunschweig\fi \\
\IfLanguageName{ngerman}{DEUTSCHLAND}{GERMANY} \\
\end{tabular}%
\hfill
\begin{tabular}{@{}l@{~}l@{}}
\usekomavar*{fromphone} & \ifptb@BLN +49 30 3481-0 \else +49 531 592-0 \fi \\
\usekomavar*{fromfax} & \ifptb@BLN +49 30 3481-7490 \else +49 531 592-9292 \fi \\
\usekomavar*{fromemail} & \ifptb@BLN poststelle\_ib@ptb.de \else poststelle@ptb.de \fi \\
Internet: & http://www.ptb.de
\end{tabular}%
\hfill
\begin{tabular}{@{}l@{~}l@{}}
\multicolumn{2}{@{}l@{}}{Deutsche Bundesbank, Filiale Leipzig} \\
IBAN: & DE38 8600 0000 0086 0010 40 \\
BIC: & MARKDEF1860 \\
VAT-Nr.: & DE 811 240 952
\end{tabular}%
\hfill
\begin{tabular}{@{}l@{}}
\ifptb@BLN PTB Braunschweig \else PTB Berlin-Charlottenburg \fi \\
\ifptb@BLN Bundesallee 100 \else Abbestr. 2--12 \fi \\
\ifptb@BLN 38116 Braunschweig \else 10587 Berlin \fi \\
\IfLanguageName{ngerman}{DEUTSCHLAND}{GERMANY}
\end{tabular}%
\hfill \mbox{}
}%
}
\setkomavar{backaddressseparator}{\,\,\textbullet\,\,}
\ifptb@BLN
\setkomavar{backaddress}{PTB\\Abbestr. 2--12\\10587 Berlin}
\else
\setkomavar{backaddress}{PTB\\Postfach 33 45\\38023 Braunschweig}
\fi
\newcommand*\ptb@setcommand[3][]{% #1=default (opt.), #2=macro, #3=value
\edef\ptb@tempa{\trim@spaces@noexp{#3}}%
\expandafter\protected@edef\csname #2\endcsname{%
\ifx\@empty\ptb@tempa #1\else\ptb@tempa\fi}%
}
\newcommand*\ptb@setkomavar[2]{%
\ptb@setcommand{ptb@tempb}{#2}%
\edef\ptb@tempa{\noexpand\setkomavar{#1}{\ptb@tempb}}%
\ptb@tempa
}
\newcommand*\handledby[1]{\ptb@setkomavar{handledby}{#1}}
\newcommand*\myref[1]{\ptb@setkomavar{myref}{#1}}
\newcommand*\mymail[1]{\ptb@setkomavar{mymail}{#1}}
\newcommand*\myphone[1]{\ptb@setkomavar{myphone}{#1}}
\newcommand*\myfax[1]{\ptb@setkomavar{myfax}{#1}}
\newcommand*\myemail[1]{\ptb@setkomavar{fromemail}{#1}}
\newcommand*\yourref[1]{\ptb@setkomavar{yourref}{#1}}
\newcommand*\yourmail[1]{\ptb@setkomavar{yourmail}{#1}}
\newcommand*\backaddress[1]{\ptb@setkomavar{backaddress}{#1}}
\newcommand*\subject[1]{\setkomavar{subject}{#1}}
\renewcommand*\date[1]{\ptb@setkomavar{date}{#1}}
\newkomavar[\mymailname]{mymail}
\newkomavar[\myphonename]{myphone}
\newkomavar[\myfaxname]{myfax}
\newkomavar[\handledbyname]{handledby}
\newcommand*\ptb@bgTextI{}
\newcommand*\ptb@bgTextII{}
\newcommand*\bgText{%
\@ifstar{\@tempswatrue\ptb@bgText}{\@tempswafalse\ptb@bgText}%
}
\newcommand*\ptb@bgText[1]{%
\if@tempswa
\xdef\ptb@bgTextI{#1}%
\else
\xdef\ptb@bgTextII{#1}%
\fi
}
\RequirePackage{eso-pic}
\definecolor{bgTextColor}{gray}{0.9}
\AtBeginDocument{%
\ifx\ptb@bgTextI\@empty
\ifx\ptb@bgTextII\@empty\else
\AddToShipoutPictureBG{%
\AtTextCenter{%
\makebox(0,0)[c]{\resizebox{\textwidth}{!}{%
\rotatebox{54.7}{%
\textnormal{\textsf{\textbf{%
\color{bgTextColor}\ptb@bgTextII}}}}}}%
}%
}%
\fi
\else
\AddToShipoutPictureBG*{%
\AtTextCenter{%
\makebox(0,0)[c]{\resizebox{\textwidth}{!}{%
\rotatebox{54.7}{%
\textnormal{\textsf{\textbf{%
\color{bgTextColor}\ptb@bgTextI}}}}}}%
}%
}%
\fi
}
\defcaptionname{american,australian,british,canadian,%
english,newzealand,UKenglish,USenglish}\yourrefname{Your reference}%
\defcaptionname{american,australian,british,canadian,%
english,newzealand,UKenglish,USenglish}\yourmailname{Your letter of}%
\defcaptionname{american,australian,british,canadian,%
english,newzealand,UKenglish,USenglish}\myrefname{My reference}%
\defcaptionname{american,australian,british,canadian,%
english,newzealand,UKenglish,USenglish}\mymailname{My letter of}%
\defcaptionname{american,australian,british,canadian,%
english,newzealand,UKenglish,USenglish}\myphonename{Telephone}%
\defcaptionname{american,australian,british,canadian,%
english,newzealand,UKenglish,USenglish}\myfaxname{Fax}%
\defcaptionname{american,australian,british,canadian,%
english,newzealand,UKenglish,USenglish}\handledbyname{Handled by}%
\defcaptionname{german,ngerman,austrian,naustrian,%
swissgerman,nswissgerman}\yourrefname{Ihr Zeichen}%
\defcaptionname{german,ngerman,austrian,naustrian,%
swissgerman,nswissgerman}\yourmailname{Ihre Nachricht vom}%
\defcaptionname{german,ngerman,austrian,naustrian,%
swissgerman,nswissgerman}\myrefname{Mein Zeichen}%
\defcaptionname{german,ngerman,austrian,naustrian,%
swissgerman,nswissgerman}\mymailname{Meine Nachricht vom}%
\defcaptionname{german,ngerman,austrian,naustrian,%
swissgerman,nswissgerman}\myphonename{Telefondurchwahl}%
\defcaptionname{german,ngerman,austrian,naustrian,%
swissgerman,nswissgerman}\myfaxname{Telefaxdurchwahl}%
\defcaptionname{german,ngerman,austrian,naustrian,%
swissgerman,nswissgerman}\handledbyname{Bearbeitet von}%
\defcaptionname{german,ngerman,austrian,naustrian,%
swissgerman,nswissgerman}\enclname{Anlagen}%
\AtBeginDocument{%
\ifxetex\else
\RequirePackage[%
,factor=1500
,protrusion=true
,expansion=true
,verbose=true
,final=true
,letterspace=100
,babel=true
]{microtype}
\fi
\shorthandon{"}%
}
\RequirePackage{enumitem}
\setlist{leftmargin=*,nosep,topsep=.5em,itemsep=.25em}
\setlist[1]{labelindent=1em}
\IfLanguageName{ngerman}{%
\newcommand*\MFG{Mit freundlichen Gr\"u\ss en}
\newcommand*\MFg{Mit freundlichem Gru\ss}
\newcommand*\MHG{Mit herzlichen Gr\"u\ss en}
}{%
\newcommand*\MFG{Yours sincerely,}
\newcommand*\MFg{Sincerely,}
\newcommand*\MHG{With kind regards,}
}
\endinput
ptbposter/George.png

42.6 KiB

ptbposter/John.png

55.8 KiB

# Rolf Niepraschk, 2015/03/20, Rolf.Niepraschk@ptb.de
# Rolf Niepraschk, 2019/05/13, Rolf.Niepraschk@ptb.de
.SUFFIXES : .tex .ltx .dvi .ps .pdf .eps
DOC1 = ptbposter-test-hoch
DOC2 = ptbposter-test-quer
DOC1 = ptbposter-doc-1
DOC2 = ptbposter-doc-2
ARCHNAME = ptbposter-$(shell date +%Y-%m-%d).zip
ADDINPUTS = ptbposter-inc.tex ptbposter.cls ptbposter-logo.pdf PTB-logo-poster.pdf
all : $(DOC1).pdf $(DOC2).pdf tcb-example1.pdf tcb-example2.pdf
all : ptbposter-test-hoch.pdf ptbposter-test-quer.pdf
$(DOC1).pdf $(DOC2).pdf : $(ADDINPUTS)
$(DOC1).pdf $(DOC2).pdf tcb-example2.pdf : $(ADDINPUTS)
%.pdf : %.tex
pdflatex $<
tcb-example1.pdf : tcb-example1.tex
lualatex $<
#%.mps : %.eps
# purifyeps $< - | sed -e "s/0 0 0 setrgbcolor/%/g" > $@
# "purifyeps" macht aktuell Probleme # 2017-10-18
clean :
$(RM) $(addprefix $(DOC1), .log .aux .out)
$(RM) $(addprefix $(DOC2), .log .aux .out)
......@@ -26,6 +31,6 @@ veryclean : clean
$(RM) $(addprefix $(DOC2), .pdf)
arch :
zip $(ARCHNAME) $(DOC1).tex $(DOC2).tex $(ADDINPUTS)
zip $(ARCHNAME) $(DOC1).tex $(DOC2).tex $(ADDINPUTS) Makefile
@ echo $(ARCHNAME)
ptbposter/Paul.png

40.6 KiB

## ptbposter
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.
Nähere Einzelheiten sind in den pdf-Dateien der Beispiele
([Hochformat](ptbposter-test-hoch.pdf) und
[Querformat](ptbposter-test-quer.pdf)) sowie
in deren Quellen zu finden.
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) 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, 2025-03-13
Rolf Niepraschk
AG 7.54
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}[2019/02/20 v0.1b supplements for ptbposter (RN)]
\RequirePackage{ragged2e}
\newif\ifPTB@temp
\newcommand*\putPicture{%
\@ifstar{\PTB@temptrue\PTB@putPicture}{\PTB@tempfalse\PTB@putPicture}%
}
\newcommand\PTB@putPicture[4][t]{%
\trivlist\item\relax
\noindent\begin{minipage}[t]{\linewidth}%
\small
\@begin@tempboxa\hbox{#2}%
\ifx\relax#3\relax\mbox{}\hfill\fi
\begin{minipage}[#1]{\width}%
\if#1t%
\raisebox{\dimexpr\ht\strutbox-\height}{\usebox\@tempboxa}%
\else
\usebox\@tempboxa
\fi
\end{minipage}%
\hfill
\ifx\relax#3\relax
\mbox{}
\else
\begin{minipage}[#1]{\dimexpr\linewidth-\width-\columnsep}%
\hspace{0pt}\ifPTB@temp\RaggedRight\fi#3
\end{minipage}
\fi
\par\ifx\relax#4\relax\else\vskip.75\columnsep #4\fi
\@end@tempboxa
\end{minipage}%
\endtrivlist
}
\newcommand\putInTwoColumn[2]{%
\trivlist\item\relax
\noindent\begin{minipage}[t]{\linewidth}%
\columnsep=.5\columnsep
\begin{minipage}[t]{\dimexpr.5\linewidth-\columnsep}%
#1
\end{minipage}%
\hfill
\begin{minipage}[t]{\dimexpr.5\linewidth-\columnsep}%
#2
\end{minipage}%
\end{minipage}%
\endtrivlist
}
\endinput
File added
\documentclass[
%landscape,
%,english
%,a4paper
,layout2020
]{ptbposter}
\phone{+49-30-3481-7316}
\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]
\Author{Rainer}{Unsinn}[1]
\logo{penguin.pdf}
%%\scaleFontSizes{1.05}% Werte nahe an "1" wählen!
\title{Die \LaTeX-Dokumentenklasse "`ptbposter"'}
\begin{document}
\section{Einleitung}
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.
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.
\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}
Ohne Angabe einer Sprachoption werden die Trennregeln für "`ngerman"' (neue
deutsche Rechtschreibung) benutzt.
Das Papierformat ist entsprechend der Vorgabe auf "`A0"' festgelegt. Als
Eingabe-Kodierung wird ausschließlich "`UTF-8"' unterstützt.
\section{Angaben zu Autoren}
\subsection{Ein Autor}
Nur eine einzelne Angabe wie
\begingroup
\scriptsize
\begin{verbatim}
\Author{Max}{Müller}
\end{verbatim}
\endgroup
\subsection{Mehrere Autoren}
Die folgenden Angaben wurden in dieser Beispieldatei verwendet:
\begingroup
\scriptsize
\begin{verbatim}
\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:
\begingroup
\scriptsize
\begin{verbatim}
...
\Author*[!]{Max}{Mustermann}
...
\end{verbatim}
\endgroup
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. Der letzte Autor
gehört derselben Institution an wie der erste.
\end{multicols}
\bigskip \bigskip
\emph{Das Dokument "`\texttt{ptbposter-doc-2}"' enthält die Fortsetzung dieser
Anleitung.}
\end{document}
File added
\documentclass[
,landscape
%,english
%,a4paper
%,layout2018
,layout2020
]{ptbposter}
\phone{+49-30-3481-7316}
\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}
\Author{Rolf}{Niepraschk}[Physikalisch-Technische Bundesanstalt]
\Author*{Max}{Mustermann}
\Author{Ellen}{Bogen}[Muster Universität Oberstadt]
\Author*{Peter}{Silie}[XYZ GmbH]
\logo{penguin.pdf}
\QRcode{https://www.ctan.org/}
%%\scaleFontSizes{1.05}% Werte nahe an "1" wählen!
\title{Die \LaTeX-Dokumentenklasse "`ptbposter"'}
\begin{document}
\emph{Das Dokument "`\texttt{ptbposter-doc-1}"' enthält den ersten Teil dieser
Anleitung.}
\begin{multicols}{3}
\section{Makros}
\begin{itemize}
\item \verb|\scaleFontSizes|: Skaliert alle Schriftgrößen im Textbereich um
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
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, 3/2025
\end{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.
\begin{multicols}{\columnNumbers}
\section{Klassenoptionen}
\begin{itemize}
\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.
(Ist derzeit nicht zu empfehlen, da noch unvollkommen.)
\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.
Derzeit wird ausschließlich das Papierformat "`A0"' sowie die Eingabe-Kodierung
"`utf-8"' unterstützt.
\section{Makros}
\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.
\end{itemize}
Beide Zahlenwerte sollten nahe bei "`1"' liegen, 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.
\section{Angaben zu Autoren}
\subsection{Ein Autor}
Nur eine einzelne Angabe wie \verb|\Author{Max}{Müller}|.
\subsection{Mehrere Autoren}
\begingroup
\footnotesize
\begin{verbatim}
\Author{Rolf}{Niepraschk}[Physikalisch-Technische ...]
\Author*{Max}{Mustermann}
\Author{Ellen}{Bogen}[Muster Universität Forschungsstadt]
\Author*{Peter}{Silie}[XYZ GmbH]
\end{verbatim}
\endgroup
Der zuerst aufgeführte Autor erscheint mit Adresse, E-Mail usw.\ auch in der
Fußzeile. Als optionaler Parameter ist die Institution anzugeben, wenn weitere
Autoren existieren, die nicht zur PTB gehören. Für den zweiten Autor wird 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.
\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.
\medskip
Rolf Niepraschk
\endinput
% 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