diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/ticket |
Initial commit
Diffstat (limited to 'macros/latex/contrib/ticket')
35 files changed, 1518 insertions, 0 deletions
diff --git a/macros/latex/contrib/ticket/README.txt b/macros/latex/contrib/ticket/README.txt new file mode 100644 index 0000000000..95f81dbc18 --- /dev/null +++ b/macros/latex/contrib/ticket/README.txt @@ -0,0 +1,42 @@ + + + ticket.sty v0.4d + Creation of labels, business cards, pins with LaTeX + + Author: Thomas Emmel <thomas@family-emmel.de> + ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +This is README.txt, last changed October 11, 2016 + ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +Idea of ticket: +ticket.sty provides an easy to handle interface to create +business cards, labels for your files, stickers, pins and +other stuff for your office, conferences etc. +All you need is a definition of your "ticket" included in +a ticket definition file and the two commands +\ticketdefault and \ticket. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +Content: + +README.txt ........... this file + +ticket.sty ........... the style file + +doc .................. documentation and examples +doc/manual.xxx ....... a short introduction +doc/ex_.....xxx ...... example files + +tdf .................. ticket definitions + Send me more tdf-files!!! + ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Please read the manual for further reading. + ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +License: + +The bundle is placed under the LaTeX Project Public License v1.3 +(license/lppl1.3 on CTAN). diff --git a/macros/latex/contrib/ticket/comment b/macros/latex/contrib/ticket/comment new file mode 100644 index 0000000000..979ca1a349 --- /dev/null +++ b/macros/latex/contrib/ticket/comment @@ -0,0 +1,3 @@ +Make labels, business-cards, pins and flash-cards with LaTeX. +Provides an easy to handle interface to produce business-cards, labels for your files, stickers, pins and other stuff for your office, conferences etc. +All you need is a definition of your "ticket" included in a ticket definition file and the two commands \ticketdefault and \ticket. diff --git a/macros/latex/contrib/ticket/doc/ex_file.pdf b/macros/latex/contrib/ticket/doc/ex_file.pdf Binary files differnew file mode 100644 index 0000000000..9c3af7058c --- /dev/null +++ b/macros/latex/contrib/ticket/doc/ex_file.pdf diff --git a/macros/latex/contrib/ticket/doc/ex_file.tex b/macros/latex/contrib/ticket/doc/ex_file.tex new file mode 100644 index 0000000000..3d4d136907 --- /dev/null +++ b/macros/latex/contrib/ticket/doc/ex_file.tex @@ -0,0 +1,45 @@ +%%%% +% +% ticket.sty example file for file labels +% +%%%% +% use the corresponding paper size for your ticket definition +\documentclass[a4paper,10pt]{letter} + +% load ticket.sty with the appropriate ticket definition +\usepackage[lz1680,circlemark]{ticket} + +% load misc stuff +\usepackage{graphicx} +\usepackage{rotating} + +% make your default ticket. \ticketdefault is somewhat like a background +\renewcommand{\ticketdefault}{% + \put(155,5){\begin{sideways}% + \includegraphics[width=35mm]{logo}\end{sideways}}% + \put(150,50){\begin{rotate}{180}\Huge C O M P U T E R\end{rotate}}% +} + +% now what do you like to put in your ticket +\newcommand{\filelabel}[3]{\ticket{% + \put(33,48){\begin{sideways}\bfseries\Large#1\end{sideways}}% + \put(43,5){\begin{sideways}% + \begin{minipage}[t]{50mm}% + {\bfseries\large#2}\\[2ex]\large#3% + \end{minipage}% + \end{sideways}}% +}} + +% and here are the labels... +\begin{document} +\sffamily +\filelabel{1}{\LaTeX{} - styles}{Standard styles\\Own styles\\% + \hspace*{5mm}\bfseries ifmslide\\\hspace*{5mm}\bfseries ticket}% +\filelabel{2}{\LaTeX{} - commands}{From bar to foo} +\filelabel{3}{PDF\LaTeX}{all you need} +\filelabel{4a}{Slides}{Conferences} +\filelabel{4b}{Slides}{other stuff} +\filelabel{5}{Misc stuff}{...} +\end{document} + + diff --git a/macros/latex/contrib/ticket/doc/ex_flashcard.pdf b/macros/latex/contrib/ticket/doc/ex_flashcard.pdf Binary files differnew file mode 100644 index 0000000000..cd56e9ba30 --- /dev/null +++ b/macros/latex/contrib/ticket/doc/ex_flashcard.pdf diff --git a/macros/latex/contrib/ticket/doc/ex_flashcard.tex b/macros/latex/contrib/ticket/doc/ex_flashcard.tex new file mode 100644 index 0000000000..31b1e46508 --- /dev/null +++ b/macros/latex/contrib/ticket/doc/ex_flashcard.tex @@ -0,0 +1,76 @@ +%%% +% +% ticket.sty example file for flashcards for word learning +% +%%%% +% use the corresponding paper size for your ticket definition +\documentclass[a4paper,10pt]{letter} + +\usepackage[flashCard,boxed]{ticket} +\usepackage{graphicx} % load misc stuff +\usepackage{syntonly} %to test without output +\usepackage{fancybox} + +% make your default ticket. \ticketdefault is somewhat like a background +\renewcommand{\ticketdefault}{%no background +} + +% now what do you like to put in your ticket +\newcommand{\card}[2]{\ticket{% + \put(32.5,15){\makebox[0mm]{\centering{\huge{\textbf{#1}}}}} + }} + +\newcommand{\entryroot}[2]{} + +\newcommand{\raiz}[3]{\ticket{% + \put(2,31){{$\sqrt{\enspace}$}} + \put(32.5,15){\makebox[0mm]{{\huge{\textit{{ #1 }}}}}} +}} + +%puts a bullet on the word. +\newcommand{\blt}{$\bullet$\enspace} + +%command for the synonyms +\newcommand{\syn}[1]{ + \begin{center} + \fbox{\parbox[t]{50mm}{\centering{#1}}} + \end{center} +} + +%command for the related words. +\newcommand{\relwords}[1]{$\mathbf{\sim}$ #1} + +%command for the examples +\newcommand{\example}[1]{\\[1.5mm]\textit{#1}} + + + + +%% you can generate this part from a database! +\begin{document} +\input{words} +% change the commands for the backside +\renewcommand{\card}[2]{\ticket{% + \put(3,30){\parbox{58mm}{\large{\textbf{ #1:}}}}% + \put(4,23){\parbox[t]{58mm} {\small {\blt #2}}}% + }} + +\renewcommand{\entryroot}[2]{\small{\textbf{#1 }}\textit{\scriptsize{{#2}}}$\|$} + +\renewcommand{\raiz}[3]{\ticket{% + \put(3,30){\parbox{58mm}{\textbf{#1:} #2}}% + \put(3,13){\parbox{58mm}{#3}}% + }} + +\backside% +\oddsidemargin=8pt +\input{words} +\end{document} + + + + + + + + diff --git a/macros/latex/contrib/ticket/doc/ex_flashcard_dup.pdf b/macros/latex/contrib/ticket/doc/ex_flashcard_dup.pdf Binary files differnew file mode 100644 index 0000000000..f5c858f749 --- /dev/null +++ b/macros/latex/contrib/ticket/doc/ex_flashcard_dup.pdf diff --git a/macros/latex/contrib/ticket/doc/ex_flashcard_rm.pdf b/macros/latex/contrib/ticket/doc/ex_flashcard_rm.pdf Binary files differnew file mode 100644 index 0000000000..d00f0a86ba --- /dev/null +++ b/macros/latex/contrib/ticket/doc/ex_flashcard_rm.pdf diff --git a/macros/latex/contrib/ticket/doc/ex_flashcard_rm.tex b/macros/latex/contrib/ticket/doc/ex_flashcard_rm.tex new file mode 100644 index 0000000000..998592c5da --- /dev/null +++ b/macros/latex/contrib/ticket/doc/ex_flashcard_rm.tex @@ -0,0 +1,76 @@ +%%% +% +% ticket.sty example file for flashcards for word learning +% +%%%% +% use the corresponding paper size for your ticket definition +\documentclass[a4paper,10pt]{letter} + +\usepackage[flashCard,boxed,rowmode]{ticket} +\usepackage{graphicx} % load misc stuff +\usepackage{syntonly} %to test without output +\usepackage{fancybox} + +% make your default ticket. \ticketdefault is somewhat like a background +\renewcommand{\ticketdefault}{%no background +} + +% now what do you like to put in your ticket +\newcommand{\card}[2]{\ticket{% + \put(32.5,15){\makebox[0mm]{\centering{\huge{\textbf{#1}}}}} + }} + +\newcommand{\entryroot}[2]{} + +\newcommand{\raiz}[3]{\ticket{% + \put(2,31){{$\sqrt{\enspace}$}} + \put(32.5,15){\makebox[0mm]{{\huge{\textit{{ #1 }}}}}} +}} + +%puts a bullet on the word. +\newcommand{\blt}{$\bullet$\enspace} + +%command for the synonyms +\newcommand{\syn}[1]{ + \begin{center} + \fbox{\parbox[t]{50mm}{\centering{#1}}} + \end{center} +} + +%command for the related words. +\newcommand{\relwords}[1]{$\mathbf{\sim}$ #1} + +%command for the examples +\newcommand{\example}[1]{\\[1.5mm]\textit{#1}} + + + + +%% you can generate this part from a database! +\begin{document} +\input{words} +% change the commands for the backside +\renewcommand{\card}[2]{\ticket{% + \put(3,30){\parbox{58mm}{\large{\textbf{ #1:}}}}% + \put(4,23){\parbox[t]{58mm} {\small {\blt #2}}}% + }} + +\renewcommand{\entryroot}[2]{\small{\textbf{#1 }}\textit{\scriptsize{{#2}}}$\|$} + +\renewcommand{\raiz}[3]{\ticket{% + \put(3,30){\parbox{58mm}{\textbf{#1:} #2}}% + \put(3,13){\parbox{58mm}{#3}}% + }} + +\backside% +\oddsidemargin=8pt +\input{words} +\end{document} + + + + + + + + diff --git a/macros/latex/contrib/ticket/doc/ex_marks.pdf b/macros/latex/contrib/ticket/doc/ex_marks.pdf Binary files differnew file mode 100644 index 0000000000..90db8d6233 --- /dev/null +++ b/macros/latex/contrib/ticket/doc/ex_marks.pdf diff --git a/macros/latex/contrib/ticket/doc/ex_marks.tex b/macros/latex/contrib/ticket/doc/ex_marks.tex new file mode 100644 index 0000000000..5bcd2f9d7b --- /dev/null +++ b/macros/latex/contrib/ticket/doc/ex_marks.tex @@ -0,0 +1,62 @@ +%%%% +% +% ticket.sty example file for empty cross-marks +% +%%%% +% use the corresponding paper size for your ticket definition +\documentclass[a4paper,10pt]{letter} + +% load ticket.sty with the appropriate ticket definition +\usepackage[freepin3,emptycrossmark]{ticket} + +% load misc stuff +\usepackage{graphicx} +\usepackage{color} +%\usepackage{layout} + +% make your default ticket. \ticketdefault is somewhat like a background +% here it is empty, because we use different tickets for the front an +% the back of our card +\renewcommand{\ticketdefault}{% +} + +% now what do you like to put in your ticket +\newcommand{\acard}[1]{\ticket{% + \put( 7, 20){\large Hello!}% + \put( 7, 10){Number:\bfseries #1}% +}} + +% a counter, which makes life easier... +\newcounter{numcards} + +\begin{document} +%\layout\newpage +\sffamily + +% cards with an empty crossmark +\whiledo{\thenumcards<25}{\stepcounter{numcards}\acard{\thenumcards}}% + +% cards with cutmarks +\setcounter{numcards}{0}\ticketreset\clearpage% +\makeatletter\@emptycrossmarkfalse\@cutmarktrue\makeatother +\whiledo{\thenumcards<25}{\stepcounter{numcards}\acard{\thenumcards}}% + +% cards boxed +\setcounter{numcards}{0}\ticketreset\clearpage% +\makeatletter\@cutmarkfalse\@boxedtrue\makeatother +\whiledo{\thenumcards<25}{\stepcounter{numcards}\acard{\thenumcards}}% + +% cards with crossmarks +\setcounter{numcards}{0}\ticketreset\clearpage% +\makeatletter\@boxedfalse\@crossmarktrue\makeatother +\whiledo{\thenumcards<25}{\stepcounter{numcards}\acard{\thenumcards}}% + +% cards with circlemarks +\setcounter{numcards}{0}\ticketreset\clearpage% +\makeatletter\@crossmarkfalse\@circlemarktrue\makeatother +\whiledo{\thenumcards<25}{\stepcounter{numcards}\acard{\thenumcards}}% + + +\end{document} + + diff --git a/macros/latex/contrib/ticket/doc/ex_pin.pdf b/macros/latex/contrib/ticket/doc/ex_pin.pdf Binary files differnew file mode 100644 index 0000000000..ba9fcc5331 --- /dev/null +++ b/macros/latex/contrib/ticket/doc/ex_pin.pdf diff --git a/macros/latex/contrib/ticket/doc/ex_pin.tex b/macros/latex/contrib/ticket/doc/ex_pin.tex new file mode 100644 index 0000000000..408d166512 --- /dev/null +++ b/macros/latex/contrib/ticket/doc/ex_pin.tex @@ -0,0 +1,49 @@ +%%%% +% +% ticket.sty example file for a pin for conferences +% +%%%% +% use the corresponding paper size for your ticket definition +\documentclass[a4paper,10pt]{letter} + +% load ticket.sty with the appropriate ticket definition +\usepackage[freepin,crossmark]{ticket} + +% load misc stuff +\usepackage{graphicx} + +% make your default ticket. \ticketdefault is somewhat like a background +\renewcommand{\ticketdefault}{% + \put(50, 3){\includegraphics[width=15mm]{logo}} + \put( 5, 13){\line(1,0){60}} + \put( 7, 10){\scriptsize Animal annual meeting (AAM)} + \put( 7, 7){\scriptsize In the gardens} + \put( 7, 4){\scriptsize April 1, 2000} +} + +% now what do you like to put in your ticket +\newcommand{\confpin}[2]{\ticket{% + \put(35,36){\makebox[0mm]{\bfseries\Large #1}} + \put(35,28){\makebox[0mm]{\bfseries\large #2}}% +}} + + +%% the pins for the partipiciants ... ;-) +%% you can generate this part from a database! +\begin{document} +\sffamily +\confpin{Camelus dromedarius}{North Africa} +\confpin{Urocyon cinereoargenteus}{America} +\confpin{Galago moholi}{South Africa} +\confpin{Dasypus novemcintus}{South America} +\confpin{Rhinocerus sondaicus}{Java} +\confpin{Canis lupus}{Northern sphere} +\confpin{Ramphastus spec.}{South Amerika} +\confpin{Panthera tigris sondaica}{Java} +\confpin{Hippocampus spec.}{the ocean} +\confpin{Anthonomus grandis}{Mexico} +\confpin{Petrogale penicillata}{Australia} +\confpin{Tarsius spec.}{Sumatra} +\end{document} + + diff --git a/macros/latex/contrib/ticket/doc/ex_vcard.pdf b/macros/latex/contrib/ticket/doc/ex_vcard.pdf Binary files differnew file mode 100644 index 0000000000..6b7519786e --- /dev/null +++ b/macros/latex/contrib/ticket/doc/ex_vcard.pdf diff --git a/macros/latex/contrib/ticket/doc/ex_vcard.tex b/macros/latex/contrib/ticket/doc/ex_vcard.tex new file mode 100644 index 0000000000..b3ed05df15 --- /dev/null +++ b/macros/latex/contrib/ticket/doc/ex_vcard.tex @@ -0,0 +1,70 @@ +%%%% +% +% ticket.sty example file for visiting cards +% +%%%% +% use the corresponding paper size for your ticket definition +\documentclass[a4paper,10pt]{letter} + +% load ticket.sty with the appropriate ticket definition +\usepackage[zw32010,crossmark]{ticket} + +% load misc stuff +\usepackage{graphicx} +\usepackage{color} + +% define something +\definecolor{uni}{rgb}{.3019,.7216,.7019} + +% make your default ticket. \ticketdefault is somewhat like a background +% here it is empty, because we use different tickets for the front an +% the back of our card +\renewcommand{\ticketdefault}{% +} + +% now what do you like to put in your ticket +\newcommand{\vcardfront}[5]{\ticket{% + \put( 63, 5){\includegraphics[width=40mm,angle=90,origin=bl]{logo}} + \put( 63.2, 2){\color{uni}your logo} + \put( 5, 13){\color{uni}\line(1,0){56}} + \put( 7, 10){\small your company} + \put( 7,6.5){\small street 1} + \put( 7, 3){\small xxxxx city and state} + \put( 7, 24){\small phone:} + \put( 7, 20){\small fax:} + \put(6,40){\bfseries\LARGE #1} + \put(7,36){#2} + \put(15,24){\small #3} + \put(15,20){\small #4} + \put( 7,16){\small #5} + }} + +\newcommand{\vcardback}[1]{\ticket{% + \put( 7, 26){\small private:} + \put( 5, 23){\color{uni}\line(1,0){56}} + \put( 7,19){\small% + \begin{minipage}[t]{50mm}% + {#1}\hss% + \end{minipage}}% +}} + +% a counter, which makes life easier... +\newcounter{numcards} + +\begin{document} +\sffamily + +% ten cards for the front +\whiledo{\thenumcards<10}{% + \stepcounter{numcards}% + \vcardfront{Mr. X}{Degree/Profession}{+YY/XXXX/ZZZ ZZ ZZ}{+YY/XXXX/ZZZ ZZ ZZ}{yourmail@your-provider.xxx}} + +\setcounter{numcards}{0} + +% and ten for the backside +\whiledo{\thenumcards<10}{% + \stepcounter{numcards}% + \vcardback{phone: ---/HH HH HHH\\fax: ---/HH HH HHH\\homestreet 7\\everywhere}} +\end{document} + + diff --git a/macros/latex/contrib/ticket/doc/logo.png b/macros/latex/contrib/ticket/doc/logo.png Binary files differnew file mode 100644 index 0000000000..41b14c2e49 --- /dev/null +++ b/macros/latex/contrib/ticket/doc/logo.png diff --git a/macros/latex/contrib/ticket/doc/manual.pdf b/macros/latex/contrib/ticket/doc/manual.pdf Binary files differnew file mode 100644 index 0000000000..2f69e07c2a --- /dev/null +++ b/macros/latex/contrib/ticket/doc/manual.pdf diff --git a/macros/latex/contrib/ticket/doc/manual.tex b/macros/latex/contrib/ticket/doc/manual.tex new file mode 100644 index 0000000000..6c0450bea9 --- /dev/null +++ b/macros/latex/contrib/ticket/doc/manual.tex @@ -0,0 +1,493 @@ +\documentclass[aspectratio=1610,hyperref={pdfpagelabels=false}]{beamer} + +\usetheme{Bergen} + +%\nobuttons +%% user definitions + +\def\code#1{\texttt{#1}} +\newcommand{\ticket}{{\code{ticket.sty}}} +\newcommand{\bs}{{\mtt\\}} + +\hypersetup{pdfauthor={Thomas Emmel}} +\hypersetup{pdftitle={ticket manual}} +\hypersetup{pdfsubject={ticket.sty}} + +\IfFileExists{cmtt.sty}{\usepackage{cmtt}}{} + +\usepackage{verbatim} +\usepackage{amssymb} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{document} +\sffamily + +\title{\begin{minipage}[t]{0.98\textwidth}\begin{center} + {\mdseries \ticket{} v0.4d October 11, 2016}\\[1ex] + Making labels, business cards, pins and flash-cards with \LaTeX\\[1ex] + A short introduction + \end{center}\end{minipage}} + +\author{\scalebox{1}[1.1]{Thomas Emmel} \href{mailto:thomas@family-emmel.de}% + {thomas@family-emmel.de}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame} + \maketitle +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame} +\frametitle{A short introduction} + +\begin{block}{\ticket{}} + provides a simple interface to produce +\end{block} + business cards, labels for your files, stickers, pins and + other stuff for your office, conferences etc.\\[2ex] + All you need is a definition of your \lq{}ticket\rq{} included in + a ticket definition file (\code{.tdf}),\\ +% $\rightarrowtail$ see \hyperlink{tdf}{ticket definition file}\\ + and the two commands \code{\bs{}ticketdefault} and \code{\bs{}ticket}.\\ +% $\rightarrowtail$ see \hyperlink{ticket}{how to fill your ticket}\\[2ex] + See these examples to get an idea what you can get:\\ + \begin{exampleblock}{\href{ex_file.pdf}{\code{ex\_file}}}back labels for your files...\end{exampleblock} + \begin{exampleblock}{\href{ex_pin.pdf}{\code{ex\_pin}}}pins for a conference...\end{exampleblock} + \begin{exampleblock}{\href{ex_vcard.pdf}{\code{ex\_vcard}}} business-cards...\end{exampleblock} + \begin{exampleblock}{\href{ex_marks.pdf}{\code{ex\_marks}}} different markers used...\end{exampleblock} + \begin{exampleblock}{\href{ex_flashcard.pdf}{\code{ex\_flashcard}}} flash-cards, try it...\end{exampleblock} + \begin{exampleblock}{\href{ex_flashcard_dup.pdf}{\code{ex\_flashcard\_dup}}}in duplex mode\end{exampleblock} + \begin{exampleblock}{\href{ex_flashcard_rm.pdf}{\code{ex\_flashcard\_rm}}}in rows\end{exampleblock} +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame} + \frametitle{How to use it} + + Just add this line to the header of your latex-file: + + \code{\bs{}usepackage[{\itshape tdf-file,other options}]\{ticket\}} + + Use the letter or article documentclass and + set up the paper-size that you need. +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame}[fragile] + \frametitle{The ticket definition file}\hypertarget{tdf}{} +A sample ticket definition (\code{lz1680.tdf}) for a \lq{}LEITZ\rq{}-product is:\\ +\begin{quote} + \begin{minipage}[t]{0.5\textwidth} + {\scriptsize +\begin{verbatim} +%% +%% ticket for "Leitz 1680" +%% pre-cutted label for wide files +%% +\unitlength=1mm +%% tested for an HP5SiMX, adjust it for your printer +\hoffset=-16.2mm +\voffset=-6.6mm +\ticketNumbers{1}{4} +\ticketSize{189}{56.5} % in unitlength +\ticketDistance{0}{9.8} % in unitlength +\end{verbatim} + } + \end{minipage} +\end{quote} +The meaning of \code{\bs{}unitlength} is obvious, \code{\bs{}hoffset} and +\code{\bs{}voffset} are used to adjust the printed output. +\code{\bs{}ticketNumbers\{n$_x$\}\{n$_y$\}} are the number of the tickets +on the sheet in horizontal and vertical direction. +\code{\bs{}ticketSize\{width\}\{height\}} is the size of one ticket and +\code{\bs{}ticketDistance\{dist$_x$\}\{dist$_y$\}} are spaces +between the tickets. +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame} + \frametitle{Missing the ticket definition file} +If you like to test a new ticket definition or you like to create only a single output without reusing those definitions anymore, \ticket{} assumes default values which can be +redefined in your file.\\ +Simply call \ticket{} without any ticket definition: + +\code{\bs{}usepackage[{\itshape other options}]\{ticket\}} + +and add your definitions directly to the head of the file after loading ticket.sty. +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame}[fragile] + \frametitle{How to fill your ticket}\hypertarget{ticket}{}% + \ticket{} enables a picture-environment for all tickets. + You can put things + into this picture with \code{\color{red}\bs{}ticketdefault} and \code{\color{red}\bs{}ticket}. + Both commands offer one argument.\\ + \begin{exampleblock}{\code{\bs{}ticketdefault}} + is used to put a default and unique background to your ticket, that will be -- of course -- not changed for all tickets unless + you change it with:\\ +% \begin{quote} + \begin{minipage}[t]{.5\textwidth} + {\scriptsize +\begin{verbatim} +\renewcommand{\ticketdefault}{% + \put(100, 5){\includegraphics[width=35mm]{logo}}% + \put(100,50){\begin{rotate}{180}\Huge ...\end{rotate}}% + } +\end{verbatim} + \normalsize + } + \end{minipage} +% \end{quote} + \end{exampleblock} + \begin{exampleblock}{\code{\bs{}ticket}} + is used to provide the content which will be changed + for the individual tickets. The simplest way to do that is to define a new + command like this:\\ +% \begin{quote} + \begin{minipage}[t]{0.5\textwidth} + {\scriptsize +\begin{verbatim} +\newcommand{\myticket}[3]{\ticket{% + \put( 0, 5){#1}% + \put( 20,20){{\bfseries\large#2}\\#3}% + }} +\end{verbatim} + } + \end{minipage} +% \end{quote} +\end{exampleblock} +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\def\cross{% + \begin{picture}(0,0)% + \put(-2,0){\line(1,0){4}}\put(0,-2){\line(0,1){4}}% + \end{picture}}% +\begin{frame} + \frametitle{Additional Options} +Most of the options other than the tdf-file are used to create marks +or decorations around the ticket:\\ +\begin{alertblock}{crossmark% +\begin{picture}(23,0)(-5,0)\color{red} + \put(0,0){\cross}% + \put(0,8){\cross}% + \put(17,0){\cross}% + \put(17,8){\cross}% +\end{picture}} +Add a cross at all four corners of the ticket +\end{alertblock} +\begin{alertblock}{circlemark% +\begin{picture}(23,0)(-5,0)\color{red} + \put(0,0){\circle{2}}% + \put(0,8){\circle{2}}% + \put(17,0){\circle{2}}% + \put(17,8){\circle{2}}% +\end{picture}% +} +Add a circle at all four corners +\end{alertblock} +\begin{alertblock}{emptycrossmark% +\begin{picture}(23,0)(-5,0)\color{red} + \put(-1,0){\line(-1,0){2}} + \put(0,-1){\line(0,-1){2}} + \put(-1,8){\line(-1,0){2}} + \put(0,11){\line(0,1){2}} + \put(18,0){\line(1,0){2}} + \put(17,-1){\line(0,-1){2}} + \put(18,8){\line(1,0){2}} + \put(17,11){\line(0,1){2}} +\end{picture}% +} +A crossmark where the part of the cross inside the ticket is not visible +\end{alertblock} +\begin{alertblock}{cutmark% +\begin{picture}(23,0)(-5,0)\color{red} + \put(0,-1){\line(0,-1){2}} + \put(0,11){\line(0,1){2}} + \put(18,0){\line(1,0){2}} + \put(17,-1){\line(0,-1){2}} + \put(18,8){\line(1,0){2}} + \put(17,11){\line(0,1){2}} +\end{picture}% +} +Just add cutmarks at the outer region of the page +\end{alertblock} +\begin{alertblock}{boxed% +\begin{picture}(23,0)(-5,0)\color{red} + \put(0,0){\line(0,1){8}} + \put(0,0){\line(1,0){17}} + \put(17,8){\line(-1,0){17}} + \put(17,8){\line(0,-1){8}} +\end{picture}% +} +Add a frame around each ticket +\end{alertblock} +\begin{alertblock}{rowmode} +This option creates the tickets in rows instead of columns, +which might be useful in some cases. +\end{alertblock} +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame} + \frametitle{Special commands} +\begin{exampleblock}{reset tickets} + You can add additional page-breaks with \code{\bs{}newpage\bs{}ticketreset}. This clears the ticket-buffers and sets the corresponding values to initial values. +This can be used if you create a handful of tickets multiple times. +\end{exampleblock} + +\begin{exampleblock}{\code{\bs{}backside}} +is useful for flash-cards, see the use-cases below. +\end{exampleblock} + +\begin{exampleblock}{skip tickets} +Once you printed a series of tickets you mostly end up with some empty stickers on your sheet. In this case use \code{\bs{}ticketskip\{5\}} to skip 5 tickets (New feature) +\end{exampleblock} +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame}[fragile] + \frametitle{Organising and reading input} + In general it is a good idea to create a file that contains all definitions and the whole latex-setup and a second file that contains only the data that you like to print which can be referenced by \code{\bs{}input}. + +For example, if you reference a huge database of names of people which are used for the pins of a conference, you can easily write a script (perl, python...) that extracts the data to a file that is itself latex-formated with a \code{\bs{}myticket\{ \}\{ \}\{ \}} on each line. + +Sometimes -- of course -- you only have to print only a small amount of data and all data can easily be written to a single file. + +Sometimes a small generator-function can help to create numbers on tickets: + +\begin{quote} + \begin{minipage}[t]{0.5\textwidth} + {\scriptsize +\begin{verbatim} +\newcounter{numcards} +... +\begin{document} +... +\whiledo{\thenumcards<25}{\stepcounter{numcards}\acard{\thenumcards}}% +\end{verbatim} + } + \end{minipage} +\end{quote} +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame} + \frametitle{Use-cases} + Some examples were referenced at the beginning of this manual. I will finish this short introduction with an overview of special examples and their implementations... +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame}[fragile] +\begin{block}{Files and pins} +This is a simple example for your files. +\end{block} +The same applies to pins. Start with a \code{\bs{}ticketdefault}, with this background: +\begin{quote} + \begin{minipage}[t]{0.5\textwidth} + {\scriptsize +\begin{verbatim} +\renewcommand{\ticketdefault}{% + \put(155,5){\begin{sideways}% + \includegraphics[width=35mm]{logo}\end{sideways}}% + \put(150,50){\begin{rotate}{180}\Huge C O M P U T E R\end{rotate}}% +} +\end{verbatim} + } + \end{minipage} +\end{quote} +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame}[fragile] +\vspace*{10mm} +Now, create the content of the \code{\bs{}ticket} which differs: +\begin{quote} + \begin{minipage}[t]{0.5\textwidth} + {\scriptsize +\begin{verbatim} +\newcommand{\filelabel}[3]{\ticket{% + \put(33,48){\begin{sideways}\bfseries\Large#1\end{sideways}}% + \put(43,5){\begin{sideways}% + \begin{minipage}[t]{50mm}% + {\bfseries\large#2}\\[2ex]\large#3% + \end{minipage}% + \end{sideways}}% +}} +\end{verbatim} + } + \end{minipage} +\end{quote} + +And fill the tickets: +\begin{quote} + \begin{minipage}[t]{0.5\textwidth} + {\scriptsize +\begin{verbatim} +\begin{document} +... +\filelabel{1}{\LaTeX{} - styles}{Standard styles\\Own styles\\% + \hspace*{5mm}\bfseries ...\\\hspace*{5mm}\bfseries ticket}% +... +\end{verbatim} + } + \end{minipage} +\end{quote} +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame}[fragile]\vspace*{-4mm} +\begin{block}{Business-cards} +In this example, the \code{\bs{}ticketdefault} is empty, since we need a front and and background that differs: +\end{block} +\begin{quote} + \begin{minipage}[t]{0.5\textwidth} + {\scriptsize +\begin{verbatim} +\renewcommand{\ticketdefault}{}% + +\newcommand{\vcardfront}[5]{\ticket{% + \put( 63, 5){\includegraphics[width=40mm,angle=90,origin=bl]{logo}} + \put( 63.2, 2){\color{uni}your logo} + \put( 5, 13){\color{uni}\line(1,0){56}} + \put( 7, 10){\small your company} + \put( 7,6.5){\small street 1}\put( 7, 3){\small xxxxx city and state} + \put( 7, 24){\small phone:}\put( 7, 20){\small fax:} + \put(6,40){\bfseries\LARGE #1} + \put(7,36){#2}\put(15,24){\small #3} + \put(15,20){\small #4}\put( 7,16){\small #5} + }} + +\newcommand{\vcardback}[1]{\ticket{% + \put( 7, 26){\small private:} + \put( 5, 23){\color{uni}\line(1,0){56}} + \put( 7,19){\small% + \begin{minipage}[t]{50mm}{#1}\hss\end{minipage}}% +}} +\end{verbatim} + } + \end{minipage} +\end{quote} +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame}[fragile]\vspace*{10mm} +And fill the tickets: +\begin{quote} + \begin{minipage}[t]{0.5\textwidth} + {\scriptsize +\begin{verbatim} +% a counter, which makes life easier... +\newcounter{numcards} + +\begin{document} +... +% ten cards for the front +\whiledo{\thenumcards<10}{% + \stepcounter{numcards}% + \vcardfront{Mr. X}{Degree/Profession} + {+YY/XXXX/ZZZ ZZ ZZ}{+YY/XXXX/ZZZ ZZ ZZ} + {yourmail@your-provider.xxx}} +\setcounter{numcards}{0} +% and ten for the backside +\whiledo{\thenumcards<10}{% + \stepcounter{numcards}% + \vcardback{phone: ---/HH HH HHH\\fax: ---/HH HH HHH\\% + homestreet 7\\everywhere}} +... +\end{verbatim} + } + \end{minipage} +\end{quote} +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame}[fragile]\vspace*{-4mm} +\begin{block}{Flashcards} +In this case we work with two different \code{\bs{}ticket}-definitions since we have a file +with two different commands. However, this can be changed according to your taste: +\end{block} +\begin{quote} + \begin{minipage}[t]{0.5\textwidth} + {\scriptsize +\begin{verbatim} +% now what do you like to put in your ticket +\newcommand{\card}[2]{\ticket{% + \put(32.5,15){\makebox[0mm]{\centering{\huge{\textbf{#1}}}}} + }} +\newcommand{\raiz}[3]{\ticket{% + \put(2,31){{$\sqrt{\enspace}$}} + \put(32.5,15){\makebox[0mm]{{\huge{\textit{{ #1 }}}}}} +}} +\end{verbatim} + } + \end{minipage} +\end{quote} + +All data is in a file: +\begin{quote} + \begin{minipage}[t]{0.5\textwidth} + {\scriptsize +\begin{verbatim} +... +\begin{document} +\input{words} +\end{verbatim} + } + \end{minipage} +\end{quote} +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame}[fragile]\vspace*{10mm} +Now change the command for the backside: +\begin{quote} + \begin{minipage}[t]{0.5\textwidth} + {\scriptsize +\begin{verbatim} +\renewcommand{\card}[2]{\ticket{% + \put(3,30){\parbox{58mm}{\large{\textbf{ #1:}}}}% + \put(4,23){\parbox[t]{58mm} {\small {\blt #2}}}% + }} +\renewcommand{\raiz}[3]{\ticket{% + \put(3,30){\parbox{58mm}{\textbf{#1:} #2}}% + \put(3,13){\parbox{58mm}{#3}}% + }} +\end{verbatim} + } + \end{minipage} +\end{quote} + +Use the special command \code{\bs{}backside}, do some further adjustment for your printer and reread the file: +\begin{quote} + \begin{minipage}[t]{0.5\textwidth} + {\scriptsize +\begin{verbatim} +\backside% +\oddsidemargin=8pt +\input{words} +... +\end{verbatim} + } + \end{minipage} +\end{quote} + +If you want to print this on a duplex-printer rearrange the pages with this command for example: +\begin{quote} + \begin{minipage}[t]{0.5\textwidth} + {\scriptsize +\begin{verbatim} +psselect -p1,3,2,4 ex_flashcard.ps ex_flashcard_dup.ps ... +\end{verbatim} + } + \end{minipage} +\end{quote} +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame} + \frametitle{Acknowledgements...} + \begin{block}{Many thanks} + to those who used ticket.sty for many years and helped + to find some small bugs and those who provided ticket-definition-files (tdf) + and suggestions for new features. + \end{block} + + Many special thanks to Santiago Mejia who created an initial version + of the flash-card use-case. +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\end{document} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% LocalWords: Emmel tdf ticketdefault pdf vcard usepackage documentclass lz +% LocalWords: LEITZ unitlength hoffset voffset ticketNumbers ticketSize dist +% LocalWords: ticketDistance renewcommand crossmark circlemark emptycrossmark +% LocalWords: cutmark newpage ticketreset perl myticket todo Mejia diff --git a/macros/latex/contrib/ticket/doc/words.tex b/macros/latex/contrib/ticket/doc/words.tex new file mode 100644 index 0000000000..aa1f24d6f5 --- /dev/null +++ b/macros/latex/contrib/ticket/doc/words.tex @@ -0,0 +1,110 @@ +\raiz{a}{without}{ + \entryroot{amoral}{neither moral nor inmoral} + \entryroot{anonymous}{of unknown authorship or origin} + \entryroot{atrophy}{the wasting away of body tissue} +} +\raiz{ab/abs}{off, away from, apart, down}{ + \entryroot{abduct}{to take by force} + \entryroot{abhor}{to hate detest} + \entryroot{abdicate}{renbounce of relinquish a throne} + \entryroot{abstinence}{forbearance from any indulgence of appetite} +} +\card{abate}{to lessen to subside} +\card{abdication}{giving up control authority} +\card{aberration}{straying away from what is normal} +\card{abet}{help, aid\\\blt Act as a complice\\\blt encourage smb + (in doing wrong)} +\card{abeyance}{Expectancy\\\blt suspended action} +\card{abhor}{to hate to detest} +\card{abide}{Stay, dwell\\\blt be faithful to; endure\\\blt continue, bear} +\card{abjure}{promise or swear to give up\\\blt reject, abandon} +\card{abrogate}{repeal or annul by authority} +\card{abscond}{to go away suddenly (to avoid arrest)\\\blt depart + secretly \example{The patron ABSCONDED from the restaurant without + paying the bill}} +\card{abstruse}{difficult to comprehend obscure} +\card{abut}{Touch, be in contact with\\\blt touch along a border} +\card{abysmal}{bottomless extreme} +\raiz{ac/arc}{sharp, bitter}{ + \entryroot{acid}{something that is sharp, sour, or ill natured} + \entryroot{acute}{sharp at the end} + \entryroot{acerbic}{sour or astringent in taste, harsh in temper} + \entryroot{exacerbate}{to increase in bitterness or violenceM + aggravate} + \entryroot{acrid}{sharp or biting to the taste or smell} + \entryroot{acrimonious}{caustic, stinging, or bitter} +} +\card{acclaimed}{welcomed with shouts and approval} +\card{accolade}{praise, approval\\\blt Rite to mark the recognition of +a merit\\\blt confer knighthood} +\card{accretion}{Growth (esp organic). The growing of separate things + into one\\\blt Concretion} +\raiz{act/ag}{to do; to drive; to force}{ + \entryroot{agile}{quick and well coordinated} + \entryroot{agitate}{} + \entryroot{litigate}{to make the subject of a lawsuit} + \entryroot{prodigal}{wastfully or recklessly extravagant} + \entryroot{pedagogue}{a teacher} + \entryroot{synagoge}{a gathering or congregation of Jews} +} +\raiz{ad/al}{to, toward, near}{ + \entryroot{adapt, adjacent, addict, admire,\\ address, adhere}{} + \entryroot{adjoin}{to be close or in contact with} + \entryroot{advocate}{to plead in favour of} +} +\card{adamant}{kind of stone\\\blt inflexible, obdurate, unyielding} +\card{admonitory}{containing warning} +\card{advocate}{speech in favour of} +\card{adorn}{add beauty decorate} +\card{adulteration}{making unpure poorer in quality} +\card{affable}{polite and friendly} +\card{affinity}{close connection relationship} +\card{aggravate}{make worse irritate} +\card{agile}{active quick-moving} +\raiz{al/ali/alter}{other, another}{ + \entryroot{alternative}{} + \entryroot{alias}{} + \entryroot{alibi}{the defense by an accused person that he was + verificably elsewhere at the time of the crime} + \entryroot{alien}{óne born in another country; a foreigner} + \entryroot{alter ego}{the second self, a sustitute or deputy} + \entryroot{altruist}{concerned with the welfare of others} +} +\card{alacrity}{celerity\\\blt eager and cheerful readiness} +\card{allegiance}{Loyalty to one's king\\\blt Relation of feudal + vassal to his superior \syn{Fidelity, loyalty, support}} +\card{alleviate}{make (pain) easier to bear} +\card{allay}{assuage} +\card{alloy}{Mixing of metals\\\blt To debase by mixing with something inferior} +\card{aloof}{reserved indifferent detached} +\raiz{am}{love}{ + \entryroot{amateur}{} + \entryroot{amatory, enamored, enamorata}{} + \entryroot{amenity}{agreeable ways or manners} + \entryroot{amity}{friendship, peaceful harmony} + \entryroot{amiable}{having or showing aggreable personal qualities} + \entryroot{amicable}{characterized by exhibiting good will} +} +\card{amalgamate}{mix combine unite societies} +\raiz{amb}{to go, walk}{ + \entryroot{ambient}{moving freely, circulating} + \entryroot{ambitious, preamble, ambulance}{} + \entryroot{ambassador}{an authorized messenger or representative} + \entryroot{ambulatory}{of, pertaining to, or capable of walking} + \entryroot{ambush}{the act of lying concealed so as to attack by + surprise} +} +\raiz{amb/amph}{both, more than one, around}{ + \entryroot{ambiguous}{open to various interpretations} + \entryroot{amppibian}{} + \entryroot{ambidextrous}{} +} +\card{ambidextrous}{able to use the left hand or the right equally + well} +\card{ambiguous}{doubtful, uncertain} +\card{ambivalent}{having both of two contrary meanings} +% +%%% Local Variables: +%%% mode: plain-tex +%%% TeX-master: t +%%% End:
\ No newline at end of file diff --git a/macros/latex/contrib/ticket/tdf/aj8414.tdf b/macros/latex/contrib/ticket/tdf/aj8414.tdf new file mode 100644 index 0000000000..3442767e46 --- /dev/null +++ b/macros/latex/contrib/ticket/tdf/aj8414.tdf @@ -0,0 +1,12 @@ +%% +%% ticket for "AVERY J8414" +%% pre-cutted label for visit card +%% +\unitlength=1mm + +\hoffset=-9mm +\voffset=-7mm + +\ticketNumbers{2}{5} +\ticketSize{87}{50.8} % in unitlength +\ticketDistance{6}{0} %in unitlength diff --git a/macros/latex/contrib/ticket/tdf/dura5222.tdf b/macros/latex/contrib/ticket/tdf/dura5222.tdf new file mode 100644 index 0000000000..e8e4f103bc --- /dev/null +++ b/macros/latex/contrib/ticket/tdf/dura5222.tdf @@ -0,0 +1,14 @@ +%% +%% ticket for "Durable 5222" +%% CD/DVD pocket A4 +%% +\unitlength=1mm + +\hoffset= 7.6mm +\voffset=-3.5mm + +\ticketNumbers{2}{2} + +\ticketSize{67.7}{125} % in unitlength +\ticketDistance{0}{0} %in unitlength + diff --git a/macros/latex/contrib/ticket/tdf/flashCard.tdf b/macros/latex/contrib/ticket/tdf/flashCard.tdf new file mode 100644 index 0000000000..720df24336 --- /dev/null +++ b/macros/latex/contrib/ticket/tdf/flashCard.tdf @@ -0,0 +1,11 @@ +%% +%% free ticket for flashcards (GRE). +%% +\unitlength=1mm +\hoffset=-22mm +\voffset=-25mm + +\ticketNumbers{3}{8} + +\ticketSize{65}{35} % in unitlength +\ticketDistance{2.5}{1.5} % in unitlength diff --git a/macros/latex/contrib/ticket/tdf/freepin.tdf b/macros/latex/contrib/ticket/tdf/freepin.tdf new file mode 100644 index 0000000000..5b23fe3443 --- /dev/null +++ b/macros/latex/contrib/ticket/tdf/freepin.tdf @@ -0,0 +1,12 @@ +%% +%% free ticket for pins etc. +%% +\unitlength=1mm +\hoffset=-10mm +\voffset=-10mm + +\ticketNumbers{2}{5} + +\ticketSize{70}{50.8} % in unitlength +\ticketDistance{20}{0} %in unitlength + diff --git a/macros/latex/contrib/ticket/tdf/freepin2.tdf b/macros/latex/contrib/ticket/tdf/freepin2.tdf new file mode 100644 index 0000000000..2610cff64b --- /dev/null +++ b/macros/latex/contrib/ticket/tdf/freepin2.tdf @@ -0,0 +1,12 @@ +%% +%% free ticket for pins etc. +%% +\unitlength=1mm +\hoffset=-10mm +\voffset=-15mm + +\ticketNumbers{2}{7} + +\ticketSize{75}{39} % in unitlength +\ticketDistance{20}{0} %in unitlength + diff --git a/macros/latex/contrib/ticket/tdf/freepin3.tdf b/macros/latex/contrib/ticket/tdf/freepin3.tdf new file mode 100644 index 0000000000..40d65d9488 --- /dev/null +++ b/macros/latex/contrib/ticket/tdf/freepin3.tdf @@ -0,0 +1,12 @@ +%% +%% free ticket for pins etc. +%% +\unitlength=1mm +\hoffset=-10mm +\voffset=-15mm + +\ticketNumbers{4}{8} + +\ticketSize{35}{30} % in unitlength +\ticketDistance{5}{5} %in unitlength + diff --git a/macros/latex/contrib/ticket/tdf/he4432.tdf b/macros/latex/contrib/ticket/tdf/he4432.tdf new file mode 100644 index 0000000000..cea727db59 --- /dev/null +++ b/macros/latex/contrib/ticket/tdf/he4432.tdf @@ -0,0 +1,15 @@ +%% +%% ticket for "Herma 4432" +%% sticky labels for different use +%% +\unitlength=1mm + +%% tested for an HP5SiMX, adjust for your printer +\hoffset=-16.7mm +\voffset=-19.4mm + +\ticketNumbers{2}{6} + +\ticketSize{94}{46.5} % in unitlength +\ticketDistance{3.4}{0} %in unitlength + diff --git a/macros/latex/contrib/ticket/tdf/invite.tdf b/macros/latex/contrib/ticket/tdf/invite.tdf new file mode 100644 index 0000000000..ed184d7c37 --- /dev/null +++ b/macros/latex/contrib/ticket/tdf/invite.tdf @@ -0,0 +1,14 @@ +%% +%% ticket for "confirmation invitation" +% +\unitlength=1mm + +%% tested for an HP5SiMX, adjust for your printer +\hoffset=-16.2mm +\voffset=-6.6mm + +\ticketNumbers{1}{6} + +\ticketSize{180.0}{40.0} % in unitlength +\ticketDistance{0}{0} % in unitlength + diff --git a/macros/latex/contrib/ticket/tdf/lz1680.tdf b/macros/latex/contrib/ticket/tdf/lz1680.tdf new file mode 100644 index 0000000000..a592783b4e --- /dev/null +++ b/macros/latex/contrib/ticket/tdf/lz1680.tdf @@ -0,0 +1,15 @@ +%% +%% ticket for "Leitz 1680" +%% pre-cutted label for wide files +%% +\unitlength=1mm + +%% tested for an HP5SiMX, adjust for your printer +\hoffset=-16.2mm +\voffset=-6.6mm + +\ticketNumbers{1}{4} + +\ticketSize{189.2}{56.3} % in unitlength +\ticketDistance{0}{9.7} %in unitlength + diff --git a/macros/latex/contrib/ticket/tdf/lz1681.tdf b/macros/latex/contrib/ticket/tdf/lz1681.tdf new file mode 100644 index 0000000000..66c1cee84b --- /dev/null +++ b/macros/latex/contrib/ticket/tdf/lz1681.tdf @@ -0,0 +1,15 @@ +%% +%% ticket for "Leitz 1681" +%% pre-cutted label for small files +%% +\unitlength=1mm + +%% tested for an HP5SiMX, adjust for your printer +\hoffset=-16.2mm +\voffset=-12.2mm + +\ticketNumbers{1}{7} + +\ticketSize{189}{31} % in unitlength +\ticketDistance{0}{8} %in unitlength + diff --git a/macros/latex/contrib/ticket/tdf/lz1685.tdf b/macros/latex/contrib/ticket/tdf/lz1685.tdf new file mode 100644 index 0000000000..d7097c35eb --- /dev/null +++ b/macros/latex/contrib/ticket/tdf/lz1685.tdf @@ -0,0 +1,15 @@ +%% +%% ticket for "Leitz 1685" +%% pre-cutted label for wide files +%% +\unitlength=1mm + +%% tested for an HPLaserjet II, adjust for your printer +\hoffset=-19.2mm +\voffset=-8.6mm + +\ticketNumbers{1}{4} + +\ticketSize{191.2}{61.5} % in unitlength +\ticketDistance{0}{8} %in unitlength + diff --git a/macros/latex/contrib/ticket/tdf/rex23184237.tdf b/macros/latex/contrib/ticket/tdf/rex23184237.tdf new file mode 100644 index 0000000000..7fe7e39feb --- /dev/null +++ b/macros/latex/contrib/ticket/tdf/rex23184237.tdf @@ -0,0 +1,15 @@ +%% +%% ticket for "Rex 23184237/PP" +%% pre-cutted label for wide files +%% +\unitlength=1mm + +%% tested for an Epson XP215, adjust for your printer +\hoffset=-19.2mm +\voffset=-8.6mm + +\ticketNumbers{1}{5} + +\ticketSize{188}{53} % in unitlength +\ticketDistance{0}{0} %in unitlength + diff --git a/macros/latex/contrib/ticket/tdf/zw32010.tdf b/macros/latex/contrib/ticket/tdf/zw32010.tdf new file mode 100644 index 0000000000..564de7ede3 --- /dev/null +++ b/macros/latex/contrib/ticket/tdf/zw32010.tdf @@ -0,0 +1,15 @@ +%% +%% ticket for "Zweckform 32010" +%% pre-cutted visiting cards +%% +\unitlength=1mm + +%% tested for an HP5SiMX, adjust for your printer +\hoffset=-14.3mm +\voffset=-9.2mm + +\ticketNumbers{2}{5} + +\ticketSize{85}{54} % in unitlength +\ticketDistance{9.8}{0} %in unitlength + diff --git a/macros/latex/contrib/ticket/tdf/zw3424.tdf b/macros/latex/contrib/ticket/tdf/zw3424.tdf new file mode 100644 index 0000000000..2e1b2560a5 --- /dev/null +++ b/macros/latex/contrib/ticket/tdf/zw3424.tdf @@ -0,0 +1,15 @@ +%% +%% ticket for "Zweckform 3424" +%% address labels +%% +\unitlength=1mm + +%% tested for an HP5SiMX, adjust for your printer +\hoffset=-1in +\voffset=-1in + +\ticketNumbers{2}{6} + +\ticketSize{105}{48} % in unitlength +\ticketDistance{0}{0} %in unitlength + diff --git a/macros/latex/contrib/ticket/tdf/zw4752.tdf b/macros/latex/contrib/ticket/tdf/zw4752.tdf new file mode 100644 index 0000000000..9b866c8343 --- /dev/null +++ b/macros/latex/contrib/ticket/tdf/zw4752.tdf @@ -0,0 +1,15 @@ +%% +%% ticket for "Zweckform 4752" +%% long sticky label for wide files +%% +\unitlength=1mm + +%% tested for an HP5SiMX, adjust for your printer +\hoffset=-12.5mm +\voffset=-1in + +\ticketNumbers{3}{1} + +\ticketSize{60.8}{297} % in unitlength +\ticketDistance{0}{0} %in unitlength + diff --git a/macros/latex/contrib/ticket/ticket.sty b/macros/latex/contrib/ticket/ticket.sty new file mode 100644 index 0000000000..7718ded647 --- /dev/null +++ b/macros/latex/contrib/ticket/ticket.sty @@ -0,0 +1,285 @@ +%% +%% +%% This is file `ticket.sty', +%% +%% File: ticket.sty Copyright (c) 1999-2016 Thomas Emmel +%% <thomas@family-emmel.de> +%% +%% +% This package may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.2 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This package consists of the file ticket.sty +%% +% HISTORY: +% +% v0.1a-0.1d non-official implementations +% +% v0.2 fixing some minor bugs and add examples +% +% v0.3a checking for an old calc-package +% v0.3b use internal values if tdf-file is not specified +% v0.3c \ticketreset added. +% v0.3d added option emptycrossmark as provided by +% Rafal Bielski <rafal dot bielski at dhl dot com> +% Similar option was provided by +% Ivan Lloro Boada <antispam at wanadoo dot es> +% +% v0.4a added the flashcard-style invented by +% Santiago Mejia <san_tico at yahoo dot com> +% v0.4b added 'rowmode' introduced by Wulf Coulmann +% <wulf at coulmann dot de> +% v0.4c added \ticketskip to allow for empty tickets +% at the start such that you can re-use used sheets +% by Maximilian Appel <mail at maxappel dot de> +% v0.4d lost some examples in last package +% no new features +% +% Many thanks for all contributions +% +% +\def\fileversion{v0.4d} +\def\filedate{2016/10/11} + +\ProvidesPackage{ticket}[\filedate\space\fileversion] +\typeout{Package: `ticket' \fileversion\space <\filedate> (Thomas Emmel)} + +\newif\if@crossmark \@crossmarkfalse +\newif\if@circlemark \@circlemarkfalse +\newif\if@emptycrossmark \@emptycrossmarkfalse +\newif\if@cutmark \@cutmarkfalse +\newif\if@boxed \@boxedfalse +\newif\if@extern \@externfalse +\newif\if@backside \@backsidefalse +\newif\if@rowmode \@rowmodefalse + +\DeclareOption{boxed}{\@boxedtrue} +\DeclareOption{crossmark}{\@crossmarktrue} +\DeclareOption{circlemark}{\@circlemarktrue} +\DeclareOption{emptycrossmark}{\@emptycrossmarktrue} +\DeclareOption{cutmark}{\@cutmarktrue} +\DeclareOption{rowmode}{\@rowmodetrue} + +\DeclareOption*{\edef\ticketToUse{\CurrentOption.tdf}\@externtrue}% + +\ProcessOptions +% +\RequirePackage{ifthen} +\RequirePackage{calc} +% older calc packages have a small bug +\@ifpackagelater{calc}{1998/07/06}% + {% Yes. OK! + } + {% No. + \PackageWarning{ticket} + {Package calc too old (older than v4.1b).}% + }% + +\pagestyle{empty} + +% standard definitions +\topmargin=0pt +\headheight=0pt +\headsep=0pt +\oddsidemargin=0pt +\evensidemargin=0pt +\footskip=0pt +\voffset=0pt +\hoffset=0pt +\unitlength=1mm + +% +\newcounter{ticket@x} +\newcounter{ticket@y} +\setcounter{ticket@x}{1} +\setcounter{ticket@y}{1} + +\newcounter{ticket@num@X}% Number of tickets in horizontal direction +\newcounter{ticket@num@Y}% Number of tickets in vertical direction +\setcounter{ticket@num@X}{2}% default value +\setcounter{ticket@num@Y}{3}% default value + +\def\ticketNumbers#1#2{\setcounter{ticket@num@X}{#1}% + \setcounter{ticket@num@Y}{#2}} +% + +\newdimen\ticketWidth% width of a ticket +\newdimen\ticketHeight% height of a ticket + +\newdimen\ticket@dis@X% horizontal space between tickets +\newdimen\ticket@dis@Y% vertical space between tickets +\ticket@dis@X=0mm% default value +\ticket@dis@Y=0mm% default value + +\def\ticketSize#1#2{\gdef\ticket@size@X{#1}\ticketWidth=#1\unitlength% + \gdef\ticket@size@Y{#2}\ticketHeight=#2\unitlength} + +\def\ticketDistance#1#2{\ticket@dis@X=#1\unitlength% + \ticket@dis@Y=#2\unitlength} + +%% now load ticket definitions from file +\if@extern +\InputIfFileExists{\ticketToUse} + {\typeout{load \ticketToUse}} + {\errmessage{\ticketToUse\space not found! Please use another file}} +\else + \unitlength=1mm + \hoffset=0mm + \voffset=0mm + \ticketNumbers{2}{2} + \ticketSize{50}{20} + \ticketDistance{5}{10} +\fi + +%% temporary length +\newdimen\ticket@shift@x +\newdimen\ticket@shift@y +\newdimen\back@shift + +\setlength{\back@shift}{(\ticketWidth+\ticket@dis@X)*(\theticket@num@X-1)}% + +%% a restart +\def\ticketreset{% + \setcounter{ticket@x}{1}\setcounter{ticket@y}{1}% + \if@backside% + \setlength{\ticket@shift@y}{0pt}% + \setlength{\ticket@shift@x}{\back@shift}% + \else% + \setlength{\ticket@shift@y}{0pt}% + \setlength{\ticket@shift@x}{0pt}% + \fi} + +%% backsides should be handled different for flashcards +\def\backside{% + \@backsidetrue% + \ticketreset% + \clearpage}% + +% the heart: a "counter" +\newcommand{\ticket@counter}{% + \if@rowmode% + \ifthenelse{\value{ticket@x}<\value{ticket@num@X}}% + {\stepcounter{ticket@x}\\[-\baselineskip]}% + % otherwise: + {\setcounter{ticket@x}{1}% + \ifthenelse{\value{ticket@y}<\value{ticket@num@Y}}% + {\stepcounter{ticket@y}\\[-\baselineskip]}% + % otherwise: + {\setcounter{ticket@y}{1}\setcounter{ticket@x}{1}\newpage}}% + \setlength{\ticket@shift@y}{(\ticketHeight+\ticket@dis@Y)*(\theticket@y-1)}% + \if@backside% + \setlength{\ticket@shift@x}{\back@shift-(\ticketWidth+\ticket@dis@X)*(\theticket@x-1)}% + \else% + \setlength{\ticket@shift@x}{(\ticketWidth+\ticket@dis@X)*(\theticket@x-1)}% + \fi% + \else% + \ifthenelse{\value{ticket@y}<\value{ticket@num@Y}}% + {\stepcounter{ticket@y}\\[-\baselineskip]}% + % otherwise: + {\setcounter{ticket@y}{1}% + \ifthenelse{\value{ticket@x}<\value{ticket@num@X}}% + {\stepcounter{ticket@x}\\[-\baselineskip]}% + % otherwise: + {\setcounter{ticket@x}{1}\setcounter{ticket@y}{1}\newpage}}% + \setlength{\ticket@shift@y}{(\ticketHeight+\ticket@dis@Y)*(\theticket@y-1)}% + \if@backside% + \setlength{\ticket@shift@x}{\back@shift-(\ticketWidth+\ticket@dis@X)*(\theticket@x-1)}% + \else% + \setlength{\ticket@shift@x}{(\ticketWidth+\ticket@dis@X)*(\theticket@x-1)}% + \fi% + \fi}% + +% by Maximilian Appel 2016 +\newcounter{ticket@skipped} +\newcommand{\ticketskip}[1]{ + \setcounter{ticket@skipped}{0} + \ % space needed to avoid "there is no line here to end" error + \whiledo{\theticket@skipped<#1}{\stepcounter{ticket@skipped}\ticket@counter} +} +% + +% default content... +% users should renew this command +\newcommand{\ticketdefault}{% +% +\put( 5, 5){Ticket....}% +}% + +% the main command: \ticket +% users should define a command like \myticket to get more than one parameter +\newcommand{\ticket}[1]{% +% position global +\noindent% +\raisebox{-\ticket@shift@y}[0mm][0mm]{% +\raisebox{-\ticketHeight}[0mm][0mm]{% +\hspace*{\ticket@shift@x}% +% +% open a picture of zero size and place some crosses +\begin{picture}(0,0)% +\if@crossmark% + \put(0,0){\ticket@cross}% + \put(0,\ticket@size@Y){\ticket@cross}% + \put(\ticket@size@X,0){\ticket@cross}% + \put(\ticket@size@X,\ticket@size@Y){\ticket@cross}% +\fi% +\if@circlemark% + \put(0,0){\circle{1}}% + \put(0,\ticket@size@Y){\circle{1}}% + \put(\ticket@size@X,0){\circle{1}}% + \put(\ticket@size@X,\ticket@size@Y){\circle{1}}% +\fi% +\if@boxed% + \put(0,0){\line(1,0){\ticket@size@X}}% + \put(0,0){\line(0,1){\ticket@size@Y}}% + \put(\ticket@size@X,\ticket@size@Y){\line(-1,0){\ticket@size@X}}% + \put(\ticket@size@X,\ticket@size@Y){\line(0,-1){\ticket@size@Y}}% +\fi% +\if@emptycrossmark% + \put(0,0){\begin{picture}(0,0)% + \put(-1,0){\line(-1,0){1}}% + \put(0,-1){\line(0,-1){1}}\end{picture}}% + \put(0,\ticket@size@Y){\begin{picture}(0,0)% + \put(-1,0){\line(-1,0){1}}% + \put(0,1){\line(0,1){1}}\end{picture}}% + \put(\ticket@size@X,0){\begin{picture}(0,0)% + \put(1,0){\line(1,0){1}}% + \put(0,-1){\line(0,-1){1}}\end{picture}}% + \put(\ticket@size@X,\ticket@size@Y){\begin{picture}(0,0)% + \put(1,0){\line(1,0){1}}% + \put(0,1){\line(0,1){1}}\end{picture}}% +\fi% +\if@cutmark% + \ifthenelse{\value{ticket@x}=1}% + {\put(-1,0){\line(-1,0){1}}\put(-1,\ticket@size@Y){\line(-1,0){1}}}{}% + \ifthenelse{\value{ticket@y}=1}% + {\put(0,\ticket@size@Y){\begin{picture}(0,0)% + \put(0,1){\line(0,1){1}}\end{picture}}% + \put(\ticket@size@X,\ticket@size@Y){\begin{picture}(0,0)% + \put(0,1){\line(0,1){1}}\end{picture}}}{}% + \ifthenelse{\value{ticket@x}=\value{ticket@num@X}}% + {\put(\ticket@size@X,0){\begin{picture}(0,0)% + \put(1,0){\line(1,0){1}}\end{picture}}% + \put(\ticket@size@X,\ticket@size@Y){\begin{picture}(0,0)% + \put(1,0){\line(1,0){1}}\end{picture}}}{}% + \ifthenelse{\value{ticket@y}=\value{ticket@num@Y}}% + {\put(0,-1){\line(0,-1){1}}\put(\ticket@size@X,-1){\line(0,-1){1}}}{}% +\fi% +% put the default content into the ticket +\ticketdefault% +% put the variable content into the ticket +#1% +\end{picture}}}\ticket@counter}% +% +\def\ticket@cross{% + \begin{picture}(0,0)% + \put(-1,0){\line(1,0){2}}\put(0,-1){\line(0,1){2}}% + \end{picture}}% +% +\endinput + + |