texlive[47893] Master: postage (31may18)
commits+karl at tug.org
commits+karl at tug.org
Thu May 31 23:53:24 CEST 2018
Revision: 47893
http://tug.org/svn/texlive?view=revision&revision=47893
Author: karl
Date: 2018-05-31 23:53:23 +0200 (Thu, 31 May 2018)
Log Message:
-----------
postage (31may18)
Modified Paths:
--------------
trunk/Master/tlpkg/bin/tlpkg-ctan-check
trunk/Master/tlpkg/tlpsrc/collection-pictures.tlpsrc
Added Paths:
-----------
trunk/Master/texmf-dist/doc/latex/postage/
trunk/Master/texmf-dist/doc/latex/postage/README.txt
trunk/Master/texmf-dist/doc/latex/postage/postage.pdf
trunk/Master/texmf-dist/doc/latex/postage/sample-stamps.pdf
trunk/Master/texmf-dist/source/latex/postage/
trunk/Master/texmf-dist/source/latex/postage/postage.dtx
trunk/Master/texmf-dist/source/latex/postage/postage.ins
trunk/Master/texmf-dist/tex/latex/postage/
trunk/Master/texmf-dist/tex/latex/postage/postage.sty
trunk/Master/tlpkg/tlpsrc/postage.tlpsrc
Added: trunk/Master/texmf-dist/doc/latex/postage/README.txt
===================================================================
--- trunk/Master/texmf-dist/doc/latex/postage/README.txt (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/postage/README.txt 2018-05-31 21:53:23 UTC (rev 47893)
@@ -0,0 +1,8 @@
+----------------------------------------------------------------
+postage --- Franking letters with »Deutsche Post«'s online postage service »Internetmarke«
+E-mail: heinrich at heinrichreimer.com
+Released under the LaTeX Project Public License v1.3c or later
+See http://www.latex-project.org/lppl.txt
+----------------------------------------------------------------
+
+Franking letters with »Deutsche Post«'s online postage service »Internetmarke«.
Property changes on: trunk/Master/texmf-dist/doc/latex/postage/README.txt
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/postage/postage.pdf
===================================================================
(Binary files differ)
Index: trunk/Master/texmf-dist/doc/latex/postage/postage.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/postage/postage.pdf 2018-05-31 21:52:21 UTC (rev 47892)
+++ trunk/Master/texmf-dist/doc/latex/postage/postage.pdf 2018-05-31 21:53:23 UTC (rev 47893)
Property changes on: trunk/Master/texmf-dist/doc/latex/postage/postage.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/postage/sample-stamps.pdf
===================================================================
(Binary files differ)
Index: trunk/Master/texmf-dist/doc/latex/postage/sample-stamps.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/postage/sample-stamps.pdf 2018-05-31 21:52:21 UTC (rev 47892)
+++ trunk/Master/texmf-dist/doc/latex/postage/sample-stamps.pdf 2018-05-31 21:53:23 UTC (rev 47893)
Property changes on: trunk/Master/texmf-dist/doc/latex/postage/sample-stamps.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/source/latex/postage/postage.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/postage/postage.dtx (rev 0)
+++ trunk/Master/texmf-dist/source/latex/postage/postage.dtx 2018-05-31 21:53:23 UTC (rev 47893)
@@ -0,0 +1,569 @@
+% \iffalse meta-comment
+% !TEX program = pdfLaTeX
+%<*internal>
+\iffalse
+%</internal>
+%<*readme>
+----------------------------------------------------------------
+postage --- Franking letters with »Deutsche Post«'s online postage service »Internetmarke«
+E-mail: heinrich at heinrichreimer.com
+Released under the LaTeX Project Public License v1.3c or later
+See http://www.latex-project.org/lppl.txt
+----------------------------------------------------------------
+
+Franking letters with »Deutsche Post«'s online postage service »Internetmarke«.
+%</readme>
+%<*internal>
+\fi
+\def\nameofplainTeX{plain}
+\ifx\fmtname\nameofplainTeX\else
+ \expandafter\begingroup
+\fi
+%</internal>
+%<*install>
+\input docstrip.tex
+\keepsilent
+\askforoverwritefalse
+\preamble
+----------------------------------------------------------------
+postage --- Franking letters with »Deutsche Post«'s online postage service »Internetmarke«
+E-mail: heinrich at heinrichreimer.com
+Released under the LaTeX Project Public License v1.3c or later
+See http://www.latex-project.org/lppl.txt
+----------------------------------------------------------------
+
+\endpreamble
+\postamble
+
+Copyright (C) 2018 by Jan Heinrich Reimer <heinrich at heinrichreimer.com>
+
+This work may be distributed and/or modified under the
+conditions of the LaTeX Project Public License (LPPL), either
+version 1.3c of this license or (at your option) any later
+version. The latest version of this license is in the file:
+
+http://www.latex-project.org/lppl.txt
+
+This work is "maintained" (as per LPPL maintenance status) by
+Jan Heinrich Reimer.
+
+This work consists of the file postage.dtx
+and the derived files postage.ins,
+ postage.pdf and
+ postage.sty.
+
+\endpostamble
+\usedir{tex/latex/postage}
+\generate{
+ \file{\jobname.sty}{\from{\jobname.dtx}{package}}
+}
+%</install>
+%<install>\endbatchfile
+%<*internal>
+\usedir{source/latex/postage}
+\generate{
+ \file{\jobname.ins}{\from{\jobname.dtx}{install}}
+}
+\nopreamble\nopostamble
+\usedir{doc/latex/postage}
+\generate{
+ \file{README.txt}{\from{\jobname.dtx}{readme}}
+}
+\ifx\fmtname\nameofplainTeX
+ \expandafter\endbatchfile
+\else
+ \expandafter\endgroup
+\fi
+%</internal>
+%<*package>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{postage}[2018/05/29 v1.0 Franking letters with »Deutsche Post«'s online postage service »Internetmarke«]
+
+\RequirePackage{graphicx}
+\RequirePackage{tikz}
+\RequirePackage{calc}
+\RequirePackage{keyval}
+%</package>
+%<*driver>
+\documentclass{ltxdoc}
+\usepackage[a4paper,top=3cm,bottom=3cm,left=5cm,right=3cm]{geometry}
+\usepackage[english]{babel}
+\usepackage[utf8]{inputenc}
+\usepackage[T1]{fontenc}
+\usepackage[default,regular,bold]{sourceserifpro}
+\usepackage[semibold]{sourcesanspro}
+\usepackage{sourcecodepro}
+\usepackage{\jobname}
+\usepackage[numbered]{hypdoc}
+\usepackage{hyperref}
+\usepackage{xcolor}
+\usepackage{titlesec}
+\usepackage{listings}
+\usepackage{float}
+\hypersetup{
+ colorlinks = false,
+}
+\lstset{
+ language=TeX,
+ basicstyle=\ttfamily,
+ breakatwhitespace=false,
+ breaklines=true,
+ prebreak={\mbox{$\hookleftarrow$}},
+ numbers=left,
+ numberstyle=\scriptsize,
+ numbersep=1pt,
+ % commentstyle=\color{lscomment},
+ keepspaces=true,
+ % keywordstyle=\bfseries\color{lskeyword},
+ stringstyle=\color{lsstring},
+ tabsize=4,
+ xleftmargin=1em,
+}
+\titleformat{\section}{\sf\LARGE\bfseries}{\thesection}{1em}{}
+\titleformat{\subsection}{\sf\Large\bfseries}{\thesubsection}{1em}{}
+\titleformat{\subsubsection}{\sf\large\bfseries}{\thesubsubsection}{1em}{}
+\setlength{\parindent}{0pt}
+\EnableCrossrefs
+\CodelineIndex
+\RecordChanges
+\begin{document}
+ \DocInput{\jobname.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+%\GetFileInfo{\jobname.sty}
+%
+%\title{\sf\fontseries{sb}^^A
+% The \textbf{postage} package^^A
+% \footnote{This document describes version \fileversion, last revised \filedate.}^^A
+%}
+%\author{\sf ^^A
+% Jan Heinrich Reimer^^A
+% \footnote{Address: Barfüßerstraße 7, 06108 Halle (Saale), Germany} \\
+% \texttt{\small heinrich at heinrichreimer.com}^^A
+%}
+%\date{\sf^^A
+% Released \filedate
+%}
+%
+%\maketitle
+%
+%\tableofcontents
+%
+%\section{Introduction}
+%
+% The \textsf{postage} package is used for franking letters
+% with \frqq Deutsche Post\flqq's
+% online postage service \frqq Internetmarke\flqq.
+%
+%\changes{v1.0}{2018/05/29}{First public release}
+%
+%\section{Usage}
+%
+%\subsection{Requirements}
+%
+% Note that in order to print valid stamps
+% the \marg{file} argument of any of this package's commands
+% \emph{must} point to a valid PDF
+% of \frqq Deutsche Post\flqq's \frqq Ausdruck 4-spaltig (DIN A4)\flqq{} format.^^A
+% \footnote{See also section \ref{outlook}.}
+%
+%\subsection{Commands}
+%
+%\addcontentsline{toc}{subsection}{\cs{includestamp}}\label{sec:includestamp}
+%\DescribeMacro{\includestamp}
+% The \cs{includestamp}\oarg{options}\marg{file} command loads a single stamp
+% from the file spceified in its mandatory \marg{file} argument
+% and draws it on the page.
+% The additional \hyperref[sec:includestamp:options]{\oarg{options}} can be used to
+% specify the stamps position in the \marg{file}
+% and the stamp's appearance.
+%
+%\subsubsection*{Options \oarg{options}}\label{sec:includestamp:options}
+%
+%\DescribeMacro{style=$\langle$normal$\vert$compact$\rangle$}
+% The stamp's appearance; may either be \texttt{normal} or \texttt{compact}.
+%
+%\DescribeMacro{normal}
+% Set the stamp's appearance to \texttt{normal}. Same as \texttt{style=normal}.
+%
+%\DescribeMacro{compact}
+% Set the stamp's appearance to \texttt{compact}. Same as \texttt{style=compact}.
+%
+%\DescribeMacro{page=$\langle$1\textellipsis$\rangle$}
+% The stamp's page from which to copy the stamp from the stamps PDF file. Pages count from 1.
+%
+%\DescribeMacro{row=$\langle$1\textellipsis8$\rangle$}
+% The stamp's row on the page. Rows count from 1 to 8.
+%
+%\DescribeMacro{column=$\langle$1\textellipsis4$\rangle$}
+% The stamp's column on the page. Rows count from 1 to 4.
+%
+%\subsubsection*{Example}
+%
+% The following code generates figure \ref{fig:sample:1}:
+% \iffalse
+%<*example>
+% \fi
+\begin{lstlisting}[language=tex]
+\includestamp{sample-stamps}
+\end{lstlisting}
+% \iffalse
+%<*example>
+% \fi
+% or
+% \iffalse
+%</example>
+% \fi
+\begin{lstlisting}[language=tex]
+\includestamp[page=1,row=1,column=1,normal]{sample-stamps}
+\end{lstlisting}
+% \iffalse
+%</example>
+% \fi
+%
+% \begin{figure}[H]
+% \centering
+% \includestamp{sample-stamps}%
+% \quad%
+% \frame{\includestamp{sample-stamps}}
+% \caption{A normal-sized stamp (taken from \frqq Deutsche Post\flqq's sample PDF).}\label{fig:sample:1}
+% \end{figure}
+%
+% The following code generates figure \ref{fig:sample:2}:
+% \iffalse
+%<*example>
+% \fi
+\begin{lstlisting}[language=tex]
+\includestamp[compact]{sample-stamps}
+\end{lstlisting}
+% \iffalse
+%</example>
+% \fi
+% or
+% \iffalse
+%<*example>
+% \fi
+\begin{lstlisting}[language=tex]
+\includestamp[row=1,column=1,style=normal]{sample-stamps}
+\end{lstlisting}
+% \iffalse
+%</example>
+% \fi
+%
+% \begin{figure}[H]
+% \centering
+% \includestamp[compact]{sample-stamps}%
+% \quad%
+% \frame{\includestamp[compact]{sample-stamps}}
+% \caption{The same stamp in its compact representation.}\label{fig:sample:2}
+% \end{figure}
+%
+%\iffalse
+%<*package>
+%\fi
+%
+%\section{Implementation}
+%
+%\subsection{Initialization}
+%
+%\subsubsection{Options}
+%
+% Define the stamp's display styles, the default display style
+% and the according command options
+% \texttt{style}, \texttt{compact} and \texttt{normal}.
+% \begin{macrocode}
+\def\postage at stamp@style at normal{normal}
+\def\postage at stamp@style at compact{compact}
+\let\postage at current@stamp at style\postage at stamp@style at normal
+\define at key{postage}{style}{%
+ \def\postage at current@stamp at style{#1}%
+}
+\define at key{postage}{compact}[true]{%
+ \let\postage at current@stamp at style\postage at stamp@style at compact%
+}
+\define at key{postage}{normal}[true]{%
+ \let\postage at current@stamp at style\postage at stamp@style at compact%
+}
+% \end{macrocode}
+%
+% Define the stamp's page, row and column
+% on the \frqq Internetmarke\flqq{} PDF,
+% their defaults and the according command options
+% \texttt{page}, \texttt{row} and \texttt{column}.
+% \begin{macrocode}
+\def\postage at current@stamp at page{1}
+\def\postage at current@stamp at row{1}
+\def\postage at current@stamp at column{1}
+\define at key{postage}{page}{%
+ \def\postage at current@stamp at page{#1}%
+}
+\define at key{postage}{row}{%
+ \def\postage at current@stamp at row{#1}%
+}
+\define at key{postage}{column}{%
+ \def\postage at current@stamp at column{#1}%
+}
+% \end{macrocode}
+%
+%\subsubsection{Lengths}
+%
+% Create the lengths describing the stamp's
+% position, height and width on the PDF page
+% as well as each stamp's parts relative to
+% the stamp's position.
+% \begin{macrocode}
+\newlength{\postage at page@width}
+\newlength{\postage at page@height}
+\newlength{\postage at grid@width}
+\newlength{\postage at grid@height}
+\newlength{\postage at grid@x}
+\newlength{\postage at grid@y}
+\newlength{\postage at stamp@content at width}
+\newlength{\postage at stamp@content at height}
+\newlength{\postage at stamp@content at x}
+\newlength{\postage at stamp@content at y}
+\newlength{\postage at stamp@barcode at width}
+\newlength{\postage at stamp@barcode at height}
+\newlength{\postage at stamp@barcode at x}
+\newlength{\postage at stamp@barcode at y}
+\newlength{\postage at stamp@barcode at text@width}
+\newlength{\postage at stamp@logo at width}
+\newlength{\postage at stamp@logo at height}
+\newlength{\postage at stamp@logo at x}
+\newlength{\postage at stamp@logo at y}
+% \end{macrocode}
+%
+% Save the lengths describing
+% \frqq Deutsche Post\flqq's \frqq Internetmarke\flqq
+% in its \frqq Ausdruck 4-spaltig (DIN A4)\flqq{} format.
+% All measurments below have been taken
+% from \frqq Deutsche Post\flqq's
+% official sample PDF using the Inkscape vector editor
+% with a precision of $\pm$0.0005mm
+% \begin{macrocode}
+\setlength{\postage at page@width}{209.99979mm}
+\setlength{\postage at page@height}{296.99973mm}
+\setlength{\postage at grid@width}{40mm}
+\setlength{\postage at grid@height}{32.999mm}
+\setlength{\postage at grid@x}{22.5mm}
+\setlength{\postage at grid@y}{14.05473mm}
+\setlength{\postage at stamp@content at width}{31.639mm}
+\setlength{\postage at stamp@content at height}{22.473mm}
+\setlength{\postage at stamp@content at x}{3.024mm}
+\setlength{\postage at stamp@content at y}{2.855mm}
+\setlength{\postage at stamp@barcode at width}{30.862mm}
+\setlength{\postage at stamp@barcode at height}{11.01mm}
+\setlength{\postage at stamp@barcode at x}{3.009mm}
+\setlength{\postage at stamp@barcode at y}{11.029mm}
+\setlength{\postage at stamp@barcode at text@width}{15.732mm}
+\setlength{\postage at stamp@logo at width}{31.639mm}
+\setlength{\postage at stamp@logo at height}{5.282mm}
+\setlength{\postage at stamp@logo at x}{3.024mm}
+\setlength{\postage at stamp@logo at y}{2.855mm}
+% \end{macrocode}
+%
+% Create temporary lengths that are calculated individually
+% for each stamp.
+% \begin{macrocode}
+\newlength{\postage at current@stamp at x}
+\newlength{\postage at current@stamp at y}
+\newlength{\postage at current@stamp at trim@left}
+\newlength{\postage at current@stamp at trim@bottom}
+\newlength{\postage at current@stamp at trim@right}
+\newlength{\postage at current@stamp at trim@top}
+% \end{macrocode}
+%
+%\subsection{Calculating position}
+%
+%\begin{macro}{\postage at calculate@current at stamp@position}
+% Calculate the current stamp's position on the page
+% based on its \texttt{row}
+% and \texttt{column} options.
+% \begin{macrocode}
+\newcommand{\postage at calculate@current at stamp@position}{
+ \setlength{\postage at current@stamp at x}{
+ \postage at grid@x +
+ \postage at grid@width *
+ (\postage at current@stamp at column - 1)
+ }%
+ \setlength{\postage at current@stamp at y}{
+ \postage at grid@y +
+ \postage at grid@height *
+ (\postage at current@stamp at row - 1)
+ }%
+}
+% \end{macrocode}
+%\end{macro}
+%
+%\subsection{Drawing}
+%
+%\begin{macro}{\postage at draw@current at stamp@part}
+% Draw a part of the current stamp whose trim offsets
+% were previously calculated using \cs{postage at calculate@current at stamp@position}.
+% \begin{macrocode}
+\newcommand{\postage at draw@current at stamp@part}[1][]{%
+ \includegraphics[page=\postage at current@stamp at page, trim={
+ {1\postage at current@stamp at trim@left}
+ {1\postage at current@stamp at trim@bottom}
+ {1\postage at current@stamp at trim@right}
+ {1\postage at current@stamp at trim@top}
+ }, clip, #1]{\postage at current@stamp at file}%
+}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\postage at draw@current at stamp@content}
+% Draw the current stamp's whole content trimming whitespace around it.
+% \begin{macrocode}
+\newcommand{\postage at draw@current at stamp@content}{%
+ \setlength{\postage at current@stamp at trim@top}{
+ \postage at current@stamp at y +
+ \postage at stamp@content at y
+ }%
+ \setlength{\postage at current@stamp at trim@left}{
+ \postage at current@stamp at x +
+ \postage at stamp@content at x
+ }%
+ \setlength{\postage at current@stamp at trim@bottom}{
+ \postage at page@height -
+ \postage at current@stamp at trim@top -
+ \postage at stamp@content at height
+ }%
+ \setlength{\postage at current@stamp at trim@right}{
+ \postage at page@width -
+ \postage at current@stamp at trim@left -
+ \postage at stamp@content at width
+ }%
+ \postage at draw@current at stamp@part%
+}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\postage at draw@current at stamp@barcode}
+% Draw only the current stamp's barcode (and the included number code).
+% \begin{macrocode}
+\newcommand{\postage at draw@current at stamp@barcode}{%
+ \setlength{\postage at current@stamp at trim@top}{
+ \postage at current@stamp at y +
+ \postage at stamp@barcode at y
+ }%
+ \setlength{\postage at current@stamp at trim@left}{
+ \postage at current@stamp at x +
+ \postage at stamp@barcode at x
+ }%
+ \setlength{\postage at current@stamp at trim@bottom}{
+ \postage at page@height -
+ \postage at current@stamp at trim@top -
+ \postage at stamp@barcode at height}%
+ \setlength{\postage at current@stamp at trim@right}{
+ \postage at page@width -
+ \postage at current@stamp at trim@left -
+ \postage at stamp@barcode at width
+ }%
+ \postage at draw@current at stamp@part%
+}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\postage at draw@current at stamp@logo}
+% Draw only the current stamp's \frqq Deutsche Post\flqq{} logo.
+% \begin{macrocode}
+\newcommand{\postage at draw@current at stamp@logo}{%
+ \setlength{\postage at current@stamp at trim@top}{
+ \postage at current@stamp at y +
+ \postage at stamp@logo at y
+ }%
+ \setlength{\postage at current@stamp at trim@left}{
+ \postage at current@stamp at x +
+ \postage at stamp@logo at x
+ }%
+ \setlength{\postage at current@stamp at trim@bottom}{
+ \postage at page@height -
+ \postage at current@stamp at trim@top -
+ \postage at stamp@logo at height
+ }%
+ \setlength{\postage at current@stamp at trim@right}{
+ \postage at page@width -
+ \postage at current@stamp at trim@left -
+ \postage at stamp@logo at width
+ }%
+ \postage at draw@current at stamp@part[%
+ width={1\postage at stamp@barcode at text@width}
+ ]%
+}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\postage at draw@current at stamp@style at compact}
+% Draw the current stamp's compact representation.
+% This will print a scaled-down version of the
+% \frqq Deutsche Post\flqq{} logo in the upper-right corner
+% of the barcode and trim the big logo
+% and \frqq Internetmarke\flqq{} URL instead.
+% \begin{macrocode}
+\newcommand{\postage at draw@current at stamp@style at compact}{%
+ \begin{tikzpicture}
+ \node[anchor=north east, inner sep=0] at (0,0)
+ {\postage at draw@current at stamp@barcode};
+ \node[anchor=north east, inner sep=0] at (0,0)
+ {\postage at draw@current at stamp@logo};
+ \end{tikzpicture}%
+}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\postage at draw@current at stamp@style at normal}
+% Draw the current stamp's whole content
+% including the big \frqq Deutsche Post\flqq{} logo
+% and \frqq Internetmarke\flqq{} URL,
+% yet trimming whitespace around it.
+% \begin{macrocode}
+\newcommand{\postage at draw@current at stamp@style at normal}{%
+ \postage at draw@current at stamp@content%
+}
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\includestamp}
+% See the \hyperref[sec:includestamp]{usage documentation}.
+% \begin{macrocode}
+\newcommand{\includestamp}[2][]{%
+ \setkeys{postage}{#1}%
+ \def\postage at current@stamp at file{#2}%
+ \postage at calculate@current at stamp@position%
+ %
+ \ifx\postage at current@stamp at style\postage at stamp@style at compact%
+ \postage at draw@current at stamp@style at compact%
+ \else%
+ \postage at draw@current at stamp@style at normal%
+ \fi%
+}
+% \end{macrocode}
+%\end{macro}
+%\iffalse
+%</package>
+%\fi
+%
+%\section{Outlook}\label{outlook}
+%
+% In future this library may be extended
+% to other postage service (potentially outside Germany).
+% Then a \texttt{service} option could be set up to decide
+% which format to use.
+%
+% Speaking of formats one could also think about implementing
+% \frqq Deutsche Post\flqq's \frqq Ausdruck 3-spaltig (DIN A4)\flqq{} format
+% to support more stamp types such as enrolls and/or mail tracking,
+% which at the time of writing this package aren't supported in
+% the \frqq Deutsche Post\flqq's \frqq Internetmarke\flqq{}
+% in \frqq Ausdruck 4-spaltig (DIN A4)\flqq{} format.
+%
+%\StopEventually{^^A
+% \PrintChanges
+% \PrintIndex
+%}
+%
+%\Finale
+\endinput
Property changes on: trunk/Master/texmf-dist/source/latex/postage/postage.dtx
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/source/latex/postage/postage.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/postage/postage.ins (rev 0)
+++ trunk/Master/texmf-dist/source/latex/postage/postage.ins 2018-05-31 21:53:23 UTC (rev 47893)
@@ -0,0 +1,71 @@
+%%
+%% This is file `postage.ins',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% postage.dtx (with options: `install')
+%% ----------------------------------------------------------------
+%% postage --- Franking letters with »Deutsche Post«'s online postage service »Internetmarke«
+%% E-mail: heinrich at heinrichreimer.com
+%% Released under the LaTeX Project Public License v1.3c or later
+%% See http://www.latex-project.org/lppl.txt
+%% ----------------------------------------------------------------
+%%
+\input docstrip.tex
+\keepsilent
+\askforoverwritefalse
+\preamble
+----------------------------------------------------------------
+postage --- Franking letters with »Deutsche Post«'s online postage service »Internetmarke«
+E-mail: heinrich at heinrichreimer.com
+Released under the LaTeX Project Public License v1.3c or later
+See http://www.latex-project.org/lppl.txt
+----------------------------------------------------------------
+
+\endpreamble
+\postamble
+
+Copyright (C) 2018 by Jan Heinrich Reimer <heinrich at heinrichreimer.com>
+
+This work may be distributed and/or modified under the
+conditions of the LaTeX Project Public License (LPPL), either
+version 1.3c of this license or (at your option) any later
+version. The latest version of this license is in the file:
+
+http://www.latex-project.org/lppl.txt
+
+This work is "maintained" (as per LPPL maintenance status) by
+Jan Heinrich Reimer.
+
+This work consists of the file postage.dtx
+and the derived files postage.ins,
+ postage.pdf and
+ postage.sty.
+
+\endpostamble
+\usedir{tex/latex/postage}
+\generate{
+ \file{\jobname.sty}{\from{\jobname.dtx}{package}}
+}
+\endbatchfile
+%%
+%% Copyright (C) 2018 by Jan Heinrich Reimer <heinrich at heinrichreimer.com>
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License (LPPL), either
+%% version 1.3c of this license or (at your option) any later
+%% version. The latest version of this license is in the file:
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% This work is "maintained" (as per LPPL maintenance status) by
+%% Jan Heinrich Reimer.
+%%
+%% This work consists of the file postage.dtx
+%% and the derived files postage.ins,
+%% postage.pdf and
+%% postage.sty.
+%%
+%%
+%% End of file `postage.ins'.
Added: trunk/Master/texmf-dist/tex/latex/postage/postage.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/postage/postage.sty (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/postage/postage.sty 2018-05-31 21:53:23 UTC (rev 47893)
@@ -0,0 +1,215 @@
+%%
+%% This is file `postage.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% postage.dtx (with options: `package')
+%% ----------------------------------------------------------------
+%% postage --- Franking letters with »Deutsche Post«'s online postage service »Internetmarke«
+%% E-mail: heinrich at heinrichreimer.com
+%% Released under the LaTeX Project Public License v1.3c or later
+%% See http://www.latex-project.org/lppl.txt
+%% ----------------------------------------------------------------
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{postage}[2018/05/29 v1.0 Franking letters with »Deutsche Post«'s online postage service »Internetmarke«]
+
+\RequirePackage{graphicx}
+\RequirePackage{tikz}
+\RequirePackage{calc}
+\RequirePackage{keyval}
+\def\postage at stamp@style at normal{normal}
+\def\postage at stamp@style at compact{compact}
+\let\postage at current@stamp at style\postage at stamp@style at normal
+\define at key{postage}{style}{%
+ \def\postage at current@stamp at style{#1}%
+}
+\define at key{postage}{compact}[true]{%
+ \let\postage at current@stamp at style\postage at stamp@style at compact%
+}
+\define at key{postage}{normal}[true]{%
+ \let\postage at current@stamp at style\postage at stamp@style at compact%
+}
+\def\postage at current@stamp at page{1}
+\def\postage at current@stamp at row{1}
+\def\postage at current@stamp at column{1}
+\define at key{postage}{page}{%
+ \def\postage at current@stamp at page{#1}%
+}
+\define at key{postage}{row}{%
+ \def\postage at current@stamp at row{#1}%
+}
+\define at key{postage}{column}{%
+ \def\postage at current@stamp at column{#1}%
+}
+\newlength{\postage at page@width}
+\newlength{\postage at page@height}
+\newlength{\postage at grid@width}
+\newlength{\postage at grid@height}
+\newlength{\postage at grid@x}
+\newlength{\postage at grid@y}
+\newlength{\postage at stamp@content at width}
+\newlength{\postage at stamp@content at height}
+\newlength{\postage at stamp@content at x}
+\newlength{\postage at stamp@content at y}
+\newlength{\postage at stamp@barcode at width}
+\newlength{\postage at stamp@barcode at height}
+\newlength{\postage at stamp@barcode at x}
+\newlength{\postage at stamp@barcode at y}
+\newlength{\postage at stamp@barcode at text@width}
+\newlength{\postage at stamp@logo at width}
+\newlength{\postage at stamp@logo at height}
+\newlength{\postage at stamp@logo at x}
+\newlength{\postage at stamp@logo at y}
+\setlength{\postage at page@width}{209.99979mm}
+\setlength{\postage at page@height}{296.99973mm}
+\setlength{\postage at grid@width}{40mm}
+\setlength{\postage at grid@height}{32.999mm}
+\setlength{\postage at grid@x}{22.5mm}
+\setlength{\postage at grid@y}{14.05473mm}
+\setlength{\postage at stamp@content at width}{31.639mm}
+\setlength{\postage at stamp@content at height}{22.473mm}
+\setlength{\postage at stamp@content at x}{3.024mm}
+\setlength{\postage at stamp@content at y}{2.855mm}
+\setlength{\postage at stamp@barcode at width}{30.862mm}
+\setlength{\postage at stamp@barcode at height}{11.01mm}
+\setlength{\postage at stamp@barcode at x}{3.009mm}
+\setlength{\postage at stamp@barcode at y}{11.029mm}
+\setlength{\postage at stamp@barcode at text@width}{15.732mm}
+\setlength{\postage at stamp@logo at width}{31.639mm}
+\setlength{\postage at stamp@logo at height}{5.282mm}
+\setlength{\postage at stamp@logo at x}{3.024mm}
+\setlength{\postage at stamp@logo at y}{2.855mm}
+\newlength{\postage at current@stamp at x}
+\newlength{\postage at current@stamp at y}
+\newlength{\postage at current@stamp at trim@left}
+\newlength{\postage at current@stamp at trim@bottom}
+\newlength{\postage at current@stamp at trim@right}
+\newlength{\postage at current@stamp at trim@top}
+\newcommand{\postage at calculate@current at stamp@position}{
+ \setlength{\postage at current@stamp at x}{
+ \postage at grid@x +
+ \postage at grid@width *
+ (\postage at current@stamp at column - 1)
+ }%
+ \setlength{\postage at current@stamp at y}{
+ \postage at grid@y +
+ \postage at grid@height *
+ (\postage at current@stamp at row - 1)
+ }%
+}
+\newcommand{\postage at draw@current at stamp@part}[1][]{%
+ \includegraphics[page=\postage at current@stamp at page, trim={
+ {1\postage at current@stamp at trim@left}
+ {1\postage at current@stamp at trim@bottom}
+ {1\postage at current@stamp at trim@right}
+ {1\postage at current@stamp at trim@top}
+ }, clip, #1]{\postage at current@stamp at file}%
+}
+\newcommand{\postage at draw@current at stamp@content}{%
+ \setlength{\postage at current@stamp at trim@top}{
+ \postage at current@stamp at y +
+ \postage at stamp@content at y
+ }%
+ \setlength{\postage at current@stamp at trim@left}{
+ \postage at current@stamp at x +
+ \postage at stamp@content at x
+ }%
+ \setlength{\postage at current@stamp at trim@bottom}{
+ \postage at page@height -
+ \postage at current@stamp at trim@top -
+ \postage at stamp@content at height
+ }%
+ \setlength{\postage at current@stamp at trim@right}{
+ \postage at page@width -
+ \postage at current@stamp at trim@left -
+ \postage at stamp@content at width
+ }%
+ \postage at draw@current at stamp@part%
+}
+\newcommand{\postage at draw@current at stamp@barcode}{%
+ \setlength{\postage at current@stamp at trim@top}{
+ \postage at current@stamp at y +
+ \postage at stamp@barcode at y
+ }%
+ \setlength{\postage at current@stamp at trim@left}{
+ \postage at current@stamp at x +
+ \postage at stamp@barcode at x
+ }%
+ \setlength{\postage at current@stamp at trim@bottom}{
+ \postage at page@height -
+ \postage at current@stamp at trim@top -
+ \postage at stamp@barcode at height}%
+ \setlength{\postage at current@stamp at trim@right}{
+ \postage at page@width -
+ \postage at current@stamp at trim@left -
+ \postage at stamp@barcode at width
+ }%
+ \postage at draw@current at stamp@part%
+}
+\newcommand{\postage at draw@current at stamp@logo}{%
+ \setlength{\postage at current@stamp at trim@top}{
+ \postage at current@stamp at y +
+ \postage at stamp@logo at y
+ }%
+ \setlength{\postage at current@stamp at trim@left}{
+ \postage at current@stamp at x +
+ \postage at stamp@logo at x
+ }%
+ \setlength{\postage at current@stamp at trim@bottom}{
+ \postage at page@height -
+ \postage at current@stamp at trim@top -
+ \postage at stamp@logo at height
+ }%
+ \setlength{\postage at current@stamp at trim@right}{
+ \postage at page@width -
+ \postage at current@stamp at trim@left -
+ \postage at stamp@logo at width
+ }%
+ \postage at draw@current at stamp@part[%
+ width={1\postage at stamp@barcode at text@width}
+ ]%
+}
+\newcommand{\postage at draw@current at stamp@style at compact}{%
+ \begin{tikzpicture}
+ \node[anchor=north east, inner sep=0] at (0,0)
+ {\postage at draw@current at stamp@barcode};
+ \node[anchor=north east, inner sep=0] at (0,0)
+ {\postage at draw@current at stamp@logo};
+ \end{tikzpicture}%
+}
+\newcommand{\postage at draw@current at stamp@style at normal}{%
+ \postage at draw@current at stamp@content%
+}
+\newcommand{\includestamp}[2][]{%
+ \setkeys{postage}{#1}%
+ \def\postage at current@stamp at file{#2}%
+ \postage at calculate@current at stamp@position%
+ %
+ \ifx\postage at current@stamp at style\postage at stamp@style at compact%
+ \postage at draw@current at stamp@style at compact%
+ \else%
+ \postage at draw@current at stamp@style at normal%
+ \fi%
+}
+%%
+%% Copyright (C) 2018 by Jan Heinrich Reimer <heinrich at heinrichreimer.com>
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License (LPPL), either
+%% version 1.3c of this license or (at your option) any later
+%% version. The latest version of this license is in the file:
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% This work is "maintained" (as per LPPL maintenance status) by
+%% Jan Heinrich Reimer.
+%%
+%% This work consists of the file postage.dtx
+%% and the derived files postage.ins,
+%% postage.pdf and
+%% postage.sty.
+%%
+%%
+%% End of file `postage.sty'.
Property changes on: trunk/Master/texmf-dist/tex/latex/postage/postage.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/tlpkg/bin/tlpkg-ctan-check
===================================================================
--- trunk/Master/tlpkg/bin/tlpkg-ctan-check 2018-05-31 21:52:21 UTC (rev 47892)
+++ trunk/Master/tlpkg/bin/tlpkg-ctan-check 2018-05-31 21:53:23 UTC (rev 47893)
@@ -507,7 +507,7 @@
plnfss plstmary plweb pm-isomath pmgraph pmx pmxchords pnas2009
poemscol poetry poetrytex polexpr polski poltawski
polyglossia polynom polynomial
- polytable postcards poster-mac powerdot powerdot-FUBerlin
+ polytable postage postcards poster-mac powerdot powerdot-FUBerlin
ppr-prv pracjourn preprint prerex present presentations presentations-en
pressrelease prettyref preview prftree printlen proba probsoln procIAGssymp
prodint productbox program
Modified: trunk/Master/tlpkg/tlpsrc/collection-pictures.tlpsrc
===================================================================
--- trunk/Master/tlpkg/tlpsrc/collection-pictures.tlpsrc 2018-05-31 21:52:21 UTC (rev 47892)
+++ trunk/Master/tlpkg/tlpsrc/collection-pictures.tlpsrc 2018-05-31 21:53:23 UTC (rev 47893)
@@ -106,6 +106,7 @@
depend pinlabel
depend pixelart
depend pmgraph
+depend postage
depend prerex
depend productbox
depend pxpgfmark
Added: trunk/Master/tlpkg/tlpsrc/postage.tlpsrc
===================================================================
More information about the tex-live-commits
mailing list