summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/postage
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-05-31 21:53:23 +0000
committerKarl Berry <karl@freefriends.org>2018-05-31 21:53:23 +0000
commita5be1a204684141b5a26f9ddaa441843738dd0b3 (patch)
treed167160b889fc3be2505fa3ca44b6bfda1396475 /Master/texmf-dist/tex/latex/postage
parent0a964418bc66e27bdc4733bd834819c2dd10d52d (diff)
postage (31may18)
git-svn-id: svn://tug.org/texlive/trunk@47893 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/postage')
-rw-r--r--Master/texmf-dist/tex/latex/postage/postage.sty215
1 files changed, 215 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/postage/postage.sty b/Master/texmf-dist/tex/latex/postage/postage.sty
new file mode 100644
index 00000000000..d6bc62bb8ed
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/postage/postage.sty
@@ -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@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@stamp@style@normal{normal}
+\def\postage@stamp@style@compact{compact}
+\let\postage@current@stamp@style\postage@stamp@style@normal
+\define@key{postage}{style}{%
+ \def\postage@current@stamp@style{#1}%
+}
+\define@key{postage}{compact}[true]{%
+ \let\postage@current@stamp@style\postage@stamp@style@compact%
+}
+\define@key{postage}{normal}[true]{%
+ \let\postage@current@stamp@style\postage@stamp@style@compact%
+}
+\def\postage@current@stamp@page{1}
+\def\postage@current@stamp@row{1}
+\def\postage@current@stamp@column{1}
+\define@key{postage}{page}{%
+ \def\postage@current@stamp@page{#1}%
+}
+\define@key{postage}{row}{%
+ \def\postage@current@stamp@row{#1}%
+}
+\define@key{postage}{column}{%
+ \def\postage@current@stamp@column{#1}%
+}
+\newlength{\postage@page@width}
+\newlength{\postage@page@height}
+\newlength{\postage@grid@width}
+\newlength{\postage@grid@height}
+\newlength{\postage@grid@x}
+\newlength{\postage@grid@y}
+\newlength{\postage@stamp@content@width}
+\newlength{\postage@stamp@content@height}
+\newlength{\postage@stamp@content@x}
+\newlength{\postage@stamp@content@y}
+\newlength{\postage@stamp@barcode@width}
+\newlength{\postage@stamp@barcode@height}
+\newlength{\postage@stamp@barcode@x}
+\newlength{\postage@stamp@barcode@y}
+\newlength{\postage@stamp@barcode@text@width}
+\newlength{\postage@stamp@logo@width}
+\newlength{\postage@stamp@logo@height}
+\newlength{\postage@stamp@logo@x}
+\newlength{\postage@stamp@logo@y}
+\setlength{\postage@page@width}{209.99979mm}
+\setlength{\postage@page@height}{296.99973mm}
+\setlength{\postage@grid@width}{40mm}
+\setlength{\postage@grid@height}{32.999mm}
+\setlength{\postage@grid@x}{22.5mm}
+\setlength{\postage@grid@y}{14.05473mm}
+\setlength{\postage@stamp@content@width}{31.639mm}
+\setlength{\postage@stamp@content@height}{22.473mm}
+\setlength{\postage@stamp@content@x}{3.024mm}
+\setlength{\postage@stamp@content@y}{2.855mm}
+\setlength{\postage@stamp@barcode@width}{30.862mm}
+\setlength{\postage@stamp@barcode@height}{11.01mm}
+\setlength{\postage@stamp@barcode@x}{3.009mm}
+\setlength{\postage@stamp@barcode@y}{11.029mm}
+\setlength{\postage@stamp@barcode@text@width}{15.732mm}
+\setlength{\postage@stamp@logo@width}{31.639mm}
+\setlength{\postage@stamp@logo@height}{5.282mm}
+\setlength{\postage@stamp@logo@x}{3.024mm}
+\setlength{\postage@stamp@logo@y}{2.855mm}
+\newlength{\postage@current@stamp@x}
+\newlength{\postage@current@stamp@y}
+\newlength{\postage@current@stamp@trim@left}
+\newlength{\postage@current@stamp@trim@bottom}
+\newlength{\postage@current@stamp@trim@right}
+\newlength{\postage@current@stamp@trim@top}
+\newcommand{\postage@calculate@current@stamp@position}{
+ \setlength{\postage@current@stamp@x}{
+ \postage@grid@x +
+ \postage@grid@width *
+ (\postage@current@stamp@column - 1)
+ }%
+ \setlength{\postage@current@stamp@y}{
+ \postage@grid@y +
+ \postage@grid@height *
+ (\postage@current@stamp@row - 1)
+ }%
+}
+\newcommand{\postage@draw@current@stamp@part}[1][]{%
+ \includegraphics[page=\postage@current@stamp@page, trim={
+ {1\postage@current@stamp@trim@left}
+ {1\postage@current@stamp@trim@bottom}
+ {1\postage@current@stamp@trim@right}
+ {1\postage@current@stamp@trim@top}
+ }, clip, #1]{\postage@current@stamp@file}%
+}
+\newcommand{\postage@draw@current@stamp@content}{%
+ \setlength{\postage@current@stamp@trim@top}{
+ \postage@current@stamp@y +
+ \postage@stamp@content@y
+ }%
+ \setlength{\postage@current@stamp@trim@left}{
+ \postage@current@stamp@x +
+ \postage@stamp@content@x
+ }%
+ \setlength{\postage@current@stamp@trim@bottom}{
+ \postage@page@height -
+ \postage@current@stamp@trim@top -
+ \postage@stamp@content@height
+ }%
+ \setlength{\postage@current@stamp@trim@right}{
+ \postage@page@width -
+ \postage@current@stamp@trim@left -
+ \postage@stamp@content@width
+ }%
+ \postage@draw@current@stamp@part%
+}
+\newcommand{\postage@draw@current@stamp@barcode}{%
+ \setlength{\postage@current@stamp@trim@top}{
+ \postage@current@stamp@y +
+ \postage@stamp@barcode@y
+ }%
+ \setlength{\postage@current@stamp@trim@left}{
+ \postage@current@stamp@x +
+ \postage@stamp@barcode@x
+ }%
+ \setlength{\postage@current@stamp@trim@bottom}{
+ \postage@page@height -
+ \postage@current@stamp@trim@top -
+ \postage@stamp@barcode@height}%
+ \setlength{\postage@current@stamp@trim@right}{
+ \postage@page@width -
+ \postage@current@stamp@trim@left -
+ \postage@stamp@barcode@width
+ }%
+ \postage@draw@current@stamp@part%
+}
+\newcommand{\postage@draw@current@stamp@logo}{%
+ \setlength{\postage@current@stamp@trim@top}{
+ \postage@current@stamp@y +
+ \postage@stamp@logo@y
+ }%
+ \setlength{\postage@current@stamp@trim@left}{
+ \postage@current@stamp@x +
+ \postage@stamp@logo@x
+ }%
+ \setlength{\postage@current@stamp@trim@bottom}{
+ \postage@page@height -
+ \postage@current@stamp@trim@top -
+ \postage@stamp@logo@height
+ }%
+ \setlength{\postage@current@stamp@trim@right}{
+ \postage@page@width -
+ \postage@current@stamp@trim@left -
+ \postage@stamp@logo@width
+ }%
+ \postage@draw@current@stamp@part[%
+ width={1\postage@stamp@barcode@text@width}
+ ]%
+}
+\newcommand{\postage@draw@current@stamp@style@compact}{%
+ \begin{tikzpicture}
+ \node[anchor=north east, inner sep=0] at (0,0)
+ {\postage@draw@current@stamp@barcode};
+ \node[anchor=north east, inner sep=0] at (0,0)
+ {\postage@draw@current@stamp@logo};
+ \end{tikzpicture}%
+}
+\newcommand{\postage@draw@current@stamp@style@normal}{%
+ \postage@draw@current@stamp@content%
+}
+\newcommand{\includestamp}[2][]{%
+ \setkeys{postage}{#1}%
+ \def\postage@current@stamp@file{#2}%
+ \postage@calculate@current@stamp@position%
+ %
+ \ifx\postage@current@stamp@style\postage@stamp@style@compact%
+ \postage@draw@current@stamp@style@compact%
+ \else%
+ \postage@draw@current@stamp@style@normal%
+ \fi%
+}
+%%
+%% Copyright (C) 2018 by Jan Heinrich Reimer <heinrich@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'.