From d92f937cf11ef98b63515b19c98777e35902c088 Mon Sep 17 00:00:00 2001 From: niepra01 <rolf.niepraschk@ptb.de> Date: Wed, 6 Mar 2019 16:23:34 +0100 Subject: [PATCH] Verbereitung KS-Version 2019 (1) --- kalibrierschein/PTB-Weitergabe-Logo.pdf | Bin 0 -> 13690 bytes kalibrierschein/kalibrierschein-2019-test.tex | 33 ++ kalibrierschein/kalibrierschein-2019.cls | 436 ++++++++++++++++++ 3 files changed, 469 insertions(+) create mode 100644 kalibrierschein/PTB-Weitergabe-Logo.pdf create mode 100644 kalibrierschein/kalibrierschein-2019-test.tex create mode 100644 kalibrierschein/kalibrierschein-2019.cls diff --git a/kalibrierschein/PTB-Weitergabe-Logo.pdf b/kalibrierschein/PTB-Weitergabe-Logo.pdf new file mode 100644 index 0000000000000000000000000000000000000000..320fd79e52fac6a5364788b4e53a67746c49cc25 GIT binary patch literal 13690 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 literal 0 HcmV?d00001 diff --git a/kalibrierschein/kalibrierschein-2019-test.tex b/kalibrierschein/kalibrierschein-2019-test.tex new file mode 100644 index 0000000..33aaf7a --- /dev/null +++ b/kalibrierschein/kalibrierschein-2019-test.tex @@ -0,0 +1,33 @@ +%---------------------------+- +\listfiles +\documentclass[en,KK,2015]{kalibrierschein-2019} + +\missingEntries{ 0 } + +\object{ Helium Leak } +\manufacturer{ Inficon } +\type{ Permeation TL8 16557 } +\serialNo{ 90001065998 } +\applicant{ + { National Institute of Metrology \\Laboratorul Presiuni } + { Sos. Vitan Barzesti. nr. 11 } + { } + { 042122 Bucharest } +} +\refNo{ 7.5-1.8-18-2-2 } +\calibMark{ 75171~PTB~18 } +\calibDate{ 2018-06-18 } +\byOrder{ Dr. K. Jousten } +\examiner{ U. Becker } +\certificateDate{ 2018-06-20 } + +\begin{document} + +\printFirstPage + +\mbox{}\newpage +\mbox{}\newpage + +\printLastPage +\end{document} +%---------------------------+- diff --git a/kalibrierschein/kalibrierschein-2019.cls b/kalibrierschein/kalibrierschein-2019.cls new file mode 100644 index 0000000..9fd5ec4 --- /dev/null +++ b/kalibrierschein/kalibrierschein-2019.cls @@ -0,0 +1,436 @@ + +\setcounter{errorcontextlines}{100} +\RequirePackage{ifdraft} +\newcommand*\ks@location{Berlin} +\newcommand*\ks@kalType{KK} +\newcommand*\ks@layout{-2019}% derzeit nicht variabel +\newcommand*\ks@langs{ngerman,main=english} +\NeedsTeXFormat{LaTeX2e}[1999/12/01] +\ProvidesClass{kalibrierschein} + [2019/03/06 v0.4a Dokumentenklasse (RN/PTB)] +\DeclareOption{BS}{\def\ks@location{Braunschweig}} +\DeclareOption{BLN}{\def\ks@location{Berlin}} +\DeclareOption{KK}{\edef\ks@kalType{\CurrentOption}} +\DeclareOption{IK}{\edef\ks@kalType{\CurrentOption}} +%\DeclareOption{2015}{\edef\ks@layout{-\CurrentOption}} +\DeclareOption{german}{\def\ks@langs{english,main=ngerman}} +\DeclareOption{ngerman}{\def\ks@langs{english,main=ngerman}} +\DeclareOption{de}{\def\ks@langs{english,main=ngerman}} +\DeclareOption{english}{\def\ks@langs{ngerman,main=english}} +\DeclareOption{en}{\def\ks@langs{ngerman,main=english}} +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}} +\ProcessOptions\relax +\PassOptionsToPackage{paper=a4,pagesize,twoside=false,headinclude} + {typearea} + +\newcommand*\ks@doc@style@code{391 00B o}% Kennung der Word-Vorlage + +\LoadClass[% +,fontsize=11pt +,headings=small +,numbers=enddot +,parskip=half +]{scrartcl} + +\RequirePackage[% +headheight=0bp, +marginparwidth=0pt, +left=69bp, +right=40bp, +textheight=669bp, +top=85bp, +headsep=0bp, +footskip=0bp, +]{geometry} + +\raggedbottom % ??? + +%\RequirePackage{showframe} + +\RequirePackage[\ks@langs]{babel} +\RequirePackage[autostyle=true,german=guillemets,maxlevel=3]{csquotes}% +\RequirePackage{iflang} +\IfLanguageName{ngerman}{% + \newcommand*\ks@draftName{Entwurf}% + \AtEndOfClass{\shorthandon{"}} + \defineshorthand{"`}{\openautoquote} + \defineshorthand{"'}{\closeautoquote} +}{% + \newcommand*\ks@draftName{Draft}% +} +\MakeAutoQuote{»}{«} +\AtEndOfClass{% + \@ifpackageloaded{inputenc}{}{% + \catcode`\»=\active + \catcode`\«=\active + }% +} + +%\def\normalsize{...} +\def\huge{\@setfontsize\huge{20.26}{25.3}} +\def\large{\@setfontsize\large{12.17}{14.2}} +\def\tiny{\@setfontsize\tiny\@viipt\@viiipt} + +\RequirePackage{textcomp} + +\RequirePackage{tabularx} +\let\ks@TX@endtabularx=\TX@endtabularx +\newcommand*\origTabularx{% + \let\TX@endtabularx=\ks@TX@endtabularx +} +\RequirePackage{ltablex}\keepXColumns{} +\setcounter{LTchunksize}{100} + +\PassOptionsToPackage{final}{graphicx} +\RequirePackage{eso-pic,graphicx,booktabs} +\RequirePackage{zref-totpages} + +\newif\ifXeOrLua \XeOrLuafalse +\RequirePackage{ifxetex,ifluatex,ifpdf} + +\ifxetex% XeTeX + \XeOrLuatrue +\else + \ifluatex% LuaTeX + \XeOrLuatrue + \else + \ifpdf% pdfTeX + \else% TeX+dvips + \fi + \fi +\fi + +\RequirePackage{amsmath} + +\ifXeOrLua% XeLaTeX oder luaLaTeX + +\typeout{#### XeLaTeX oder luaLaTeX} + +%\RequirePackage[no-math]{fontspec} +\RequirePackage{unicode-math} +\setmainfont{texgyreheros}[ + Ligatures=TeX, + Extension=.otf, + UprightFont=*-regular, + BoldFont=*-bold, + ItalicFont=*-italic, + BoldItalicFont=*-bolditalic.otf] +\setsansfont{texgyreheros}[ + Ligatures=TeX, + Extension=.otf, + UprightFont=*-regular, + BoldFont=*-bold, + ItalicFont=*-italic, + BoldItalicFont=*-bolditalic.otf] +\setmathfont{Asana-Math.otf}[math-style=ISO,bold-style=ISO]% damit sind Einheiten kursiv +\setmathfont{texgyreheros-regular.otf}[range=\mathup,Scale=MatchLowercase] +\setmathfont{texgyreheros-italic.otf}[range=\mathit,Scale=MatchLowercase] +\setmathfont{texgyreheros-bold.otf}[range=\mathbfup,Scale=MatchLowercase] +\setmathfont{texgyreheros-bolditalic.otf}[range=\mathbfit,Scale=MatchLowercase] +\setmathfont{texgyreheros-regular.otf}[range=\mathsfup,Scale=MatchLowercase] +\setmathfont{texgyreheros-italic.otf}[range=\mathsfit,Scale=MatchLowercase] +\setmathfont{texgyreheros-bold.otf}[range=\mathbfsfup,Scale=MatchLowercase] +\setmathfont{texgyreheros-bolditalic.otf}[range=\mathbfsfit,Scale=MatchLowercase] +\setmathfont{texgyreheros-regular.otf}[range=\mathpunct] +\setmathfont{Asana-Math.otf}[range=\int] +% (Ulrike): )als letztes immer einen +% richtiger Mathfont, damit diverse Werte korrekt gesetzt werden. +% Wirklich nötig? + +\RequirePackage{newunicodechar} +\newunicodechar{^^^^202f}{\,}% 'NARROW NO-BREAK SPACE' (\u202F, 8239) +\newunicodechar{^^^^2009}{\,\hspace{0pt}}% 'THIN SPACE' +\newunicodechar{^^^^00ad}{\-}% 'SOFT HYPHEN' +\newunicodechar{^^^^2207}{{\setmathfont{Asana Math}^^^^2207}}% 'NABLA' + +%%% TODO: ^^^^ unschädlich machen für pdflatex + +\else + +\typeout{#### pdfLaTeX} + +\RequirePackage{fix-cm}% ??? +\RequirePackage[T1]{fontenc} +\RequirePackage[utf8]{inputenc} +\DeclareUnicodeCharacter{202F}{\,} +\DeclareUnicodeCharacter{2009}{\,\hspace{0pt}} +\DeclareUnicodeCharacter{22C5}{\cdot} +\DeclareUnicodeCharacter{03B8}{\theta} +\RequirePackage[scale=1]{tgheros} +%%%\RequirePackage[scaled=1]{helvet} +\renewcommand*\familydefault{\sfdefault} +%%%\newcommand*\mathfamilydefault{\familydefault} +%%\newcommand*\math@sfdefault{\sfdefault} + +\RequirePackage{sfmath} + +\fi + +\RequirePackage[neverdecrease]{paralist} +\let\itemize\compactitem +\let\enditemize\endcompactitem +\let\enumerate\compactenum +\let\endenumerate\endcompactenum +\let\description\compactdesc +\let\enddescription\endcompactdesc +\pltopsep=\medskipamount +\plitemsep=\smallskipamount + +\newcommand*\ks@PTB{Physikalisch-Technische Bundesanstalt} +\newcommand*\ks@BSuB{Braunschweig und Berlin} + +\RequirePackage{picture} + +\let\@tempdimd=\@clnwd +\let\@tempdime=\@clnht +\let\@tempdimf=\@dashdim + +\newcommand*\ks@tempa{} +\newcommand*\ks@tempb{} +\newcommand*\ks@tempc{} +\newcommand*\ks@tempd{} +\newcommand*\ks@tempe{} + +\newtoks\ks@tab +\newcommand*\ks@colSpec{} + +\newcommand*\ks@add[1]{% + \ks@tab\expandafter{\the\ks@tab#1}% +} + +\newcommand*\ks@addTabLine[1]{% + \def\@tempc{}% + \@for\@tempa:=#1\do{% + \edef\@tempb{\noexpand\ks@tab\noexpand\expandafter{% + \the\noexpand\ks@tab\@tempc\@tempa}}% + \@tempb + \def\@tempc{\noexpand&}% \noexpand hier unnötig, aber ... + }% +} + +\newcommand*\ks@getColSpec[2]{% + \let#2=\@empty + \@for\@tempa:=#1\do{% + \edef#2{#2X}% + }% + \ifx#2\@empty + %\def#2{l}% + \def#2{X}% + \fi +} + +\newcommand*\ks@printDevicesTable[3]{% #1 = width, #2 = 1. offset, #3 = 2. offset + \ks@tab{}% + \ks@getColSpec{\ks@type}{\ks@colSpec}% + \edef\@tempa{\noexpand\begin{tabularx}{#1}[t]{@{}\ks@colSpec @{}}}% + \ks@tab\expandafter{\@tempa}% + \ks@addTabLine{\ks@manufacturer}% + \ks@add{\tabularnewline[#2]}% + \ks@addTabLine{\ks@type}% + \ks@add{\tabularnewline[#3]}% + \ks@addTabLine{\ks@serialNo}% + %%\ks@add{\ks@serialNo}% + %%\ks@addCommaItems{\ks@serialNo}% ??? + \ks@add{\end{tabularx}}% + \begingroup + \tabcolsep=1em % + \origTabularx + %\showthe\ks@tab + \the\ks@tab + \endgroup +} + +%\RequirePackage[manualmark]{scrpage2} +\RequirePackage[manualmark,draft=false]{scrlayer-scrpage} +\clearpairofpagestyles +\lohead{\ks@head} +\lofoot{\ks@foot} + +\definecolor{PTBcolor}{RGB}{0,155,206} + +\input{\ks@kalType\ks@layout.clo}% Titelseiten- und Layout-Definition + +\newcommand*\ks@type{% + Typ des Ger\"ates} +\newcommand*\type[1]{\xdef\ks@type{\trim@spaces{#1}}} + +\newcommand*\ks@manufacturer{Namen der Hersteller} +\newcommand*\manufacturer[1]{% + \xdef\ks@manufacturer{\trim@spaces{\detokenize{#1}}}% +} + +\newcommand*\ks@object{% + Name des Ger\"ates, kurze Charakterisierung} +\newcommand*\object[1]{\xdef\ks@object{\trim@spaces{#1}}} + +\newcommand*\ks@applicant{% + Name des Auftraggebers, Stra\ss e, Firmensitz} +\newcommand*\applicant[1]{\long\gdef\ks@applicant{#1}} + +\newcommand*\ks@serialNo{XXX,YYY} +\newcommand*\serialNo[1]{% + \xdef\ks@serialNo{\trim@spaces{\detokenize{#1}}}% +} + +\newcommand*\ks@refNo{YYY-ZZZZZZZZ} +\newcommand*\refNo[1]{\xdef\ks@refNo{\trim@spaces{#1}}} + +\newcommand*\ks@calibMark{YYY-XXXXXXX} +\newcommand*\calibMark[1]{\xdef\ks@calibMark{\trim@spaces{#1}}} + +\newcommand*\ks@referenceMark{YYY-XXXXXXX} +\newcommand*\referenceMark[1]{\xdef\ks@referenceMark{\trim@spaces{#1}}} + +\newcommand*\ks@calibDate{????-??-??} +\newcommand*\calibDate[1]{\xdef\ks@calibDate{\trim@spaces{#1}}} + +\newcommand*\ks@certificateDate{????-??-??} +\newcommand*\certificateDate[1]{\xdef\ks@certificateDate{\trim@spaces{#1}}} + +\newcommand*\ks@byOrder{Peter Silie} +\newcommand*\byOrder[1]{\xdef\ks@byOrder{\trim@spaces{#1}}} + +\newcommand*\ks@examiner{Ellen Bogen} +\newcommand*\examiner[1]{\xdef\ks@examiner{\trim@spaces{#1}}} + +\newcommand*\ks@missingEntries{1} +\newcommand*\missingEntries[1]{\xdef\ks@missingEntries{\trim@spaces{#1}}} + +\newcolumntype{C}{>{\centering\arraybackslash}X} + +\RequirePackage{siunitx-PTB} + +\newcommand\resultTable[3][]{% + %\begingroup + \@tempcnta=#2 % + \@tempcntb=\numexpr(\@tempcnta-1)*2 % + \@tempdimc=\dimexpr (\textwidth - \@tempcntb\tabcolsep) / \@tempcnta % + \@tempcntb=\@tempcnta + \def\@tempa{}% + \loop\ifnum\@tempcnta>\z@ + %%%\edef\@tempa{\@tempa S[table-column-width=\the\@tempdimc]}% ??? + \edef\@tempa{\@tempa r}% + \advance\@tempcnta\m@ne + \repeat + \edef\@tempa{\noexpand\begin{longtable}{@{}\@tempa @{}}}% + \expandafter\ks@add\expandafter{\@tempa}% + \ks@add{\\\toprule}% + \ifx\relax#1\relax\else + \ks@add{\multicolumn{\the\@tempcntb}{@{}c@{}}{#1}\\\toprule}% + \fi + \ks@add{#3}% + \ks@add{\bottomrule\end{longtable}}% + %\endgroup +} + +\newcommand*\printFirstPage{% + \thispagestyle{empty}% + \AddToShipoutPicture*{\ks@printFirstPage}% + \mbox{}\clearpage + \global\let\ks@printFirstPage\@empty + \global\let\printFirstPage\@empty +} + +\newcommand*\ks@@foot{} + +\newcommand*\printLastPage{% + \clearpage + \global\let\ks@@foot=\ks@foot@add + \ks@lastPage +} + +\newcommand*\printResultTable{% + \begingroup + \LTleft=\fill \LTright=\fill% Tabelle zentriert + \sisetup{% + retain-zero-exponent + }% + \the\ks@tab + \endgroup +} + +\newcommand*\ks@applicant@table{% + \begingroup + \let\ks@tempa=\\% + \let\\=\relax + \ks@tab{}% + \expandafter\@tfor\expandafter\ks@tempb\expandafter + :\expandafter=\ks@applicant\do{% + \expandafter\edef\expandafter\ks@tempb\expandafter{% + \expandafter\trim@spaces\expandafter{\ks@tempb}}% + \ifx\ks@tempb\@empty\else + \expandafter\ks@add\expandafter{\ks@tempb\tabularnewline}% + \fi + }% + \let\\=\ks@tempa + \extrarowheight=-.1ex % + \begin{tabular}[t]{@{}l@{}}% + \the\ks@tab + \end{tabular}% + \endgroup +} + +\AtBeginDocument{ + \ifdraft{ + \AddToShipoutPictureBG{% + \AtTextCenter{% + \makebox(0,0)[c]{\resizebox{\textwidth}{!}{% + \rotatebox{54.7}{% + \textnormal{\textsf{\textbf{% + \color{lightgray}\ks@draftName}}}}}}% + }% + }% + }{% + \ifnum\number\ks@missingEntries>0 % + \AddToShipoutPictureBG{% + \AtTextCenter{% + \makebox(0,0)[c]{\resizebox{\textwidth}{!}{% + \rotatebox{54.7}{% + \textnormal{\textsf{\textbf{% + \color{lightgray}Fehler:~\ks@missingEntries}}}}}}% + }% + }% + \fi + } +} + +\RequirePackage[ +% factor=1500 +% ,verbose=true +,final=true +% ,letterspace=100 +,babel=true +]{microtype} + +\emergencystretch=1em % +\pagestyle{scrheadings} + +\renewcommand\section{% + \@startsection{section}% name + {1}% level + {\z@}% indent + {-3ex \@plus -.5ex \@minus -.2ex}% beforeskip (abs.!) + {.6ex \@plus.2ex}% afterskip + {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax + \setlength{\parfillskip}{\z@ plus 1fil}\fi + \raggedsection\normalfont\sectfont\nobreak\size@section}% +} + +\endinput +%% +%% End of file `kailbrierschein.cls'. + +sudo cp $(kpsewhich --var-value TEXMFSYSVAR)/fonts/conf/texlive-fontconfig.conf /etc/fonts/conf.d/09-texlive.conf + +sudo fc-cache -fsv + +mkluatexfontdb --force --verbose=-1 -vvv + + + + + + + + + -- GitLab