summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/elzcards
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2015-03-05 23:23:52 +0000
committerKarl Berry <karl@freefriends.org>2015-03-05 23:23:52 +0000
commite7fc2a9ed400064a361a84a4ec4c81d6e0ad0ba7 (patch)
tree64e957f1df59ee0a5845761a3e174bb4d41d08c2 /Master/texmf-dist/tex/latex/elzcards
parent8278dc715fcfa90c88e33d6237bcea350dc51f10 (diff)
elzcards (5mar15)
git-svn-id: svn://tug.org/texlive/trunk@36441 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/elzcards')
-rw-r--r--Master/texmf-dist/tex/latex/elzcards/elzcards.cls234
1 files changed, 234 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/elzcards/elzcards.cls b/Master/texmf-dist/tex/latex/elzcards/elzcards.cls
new file mode 100644
index 00000000000..6e2c4d5ec67
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/elzcards/elzcards.cls
@@ -0,0 +1,234 @@
+%%
+%% This is file `elzcards.cls',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% elzcards.dtx (with options: `class')
+%%
+%% Copyright 2015 Emilio Lazo Zaia <emiliolazozaia@gmail.com>
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3c of this license or (at your option) any later
+%% version. This version of this license is in
+%% http://www.latex-project.org/lppl/lppl-1-3c.{html|txt|tex|pdf}
+%% and the latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of
+%% LaTeX version 2008/05/04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Emilio Lazo Zaia.
+%%
+%% This work consists of the files README and elzcards.dtx with
+%% its derived files elzcards.ins, elzcards.cls and
+%% elzcards-example.tex.
+%%
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesClass{elzcards}
+[2015/03/05 v1.00 ELZ cards]
+\RequirePackage{calc}
+\RequirePackage{xparse}
+
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
+\ProcessOptions\relax
+\LoadClass{article}
+
+\newif\if@elzc@puntos
+\newif\if@elzc@lineas
+\newif\if@elzc@guias
+\newif\if@elzc@fichaconreverso
+\newif\if@elzc@reversoficha
+
+\newlength{\elzc@TarjXdim}
+\newlength{\elzc@TarjYdim}
+\newlength{\elzc@TempLen}
+
+\newcounter{elzc@TarjXdim}
+\newcounter{elzc@TarjYdim}
+\newcounter{elzc@PapelX}
+\newcounter{elzc@PapelY}
+\newcounter{elzc@NumX}
+\newcounter{elzc@NumY}
+\newcounter{elzc@ContX}
+\newcounter{elzc@ContY}
+\newcounter{elzc@PosX}
+\newcounter{elzc@PosY}
+\newcounter{elzc@RestoX}
+\newcounter{elzc@XInicial}
+\newcounter{elzc@Punto}
+\newcounter{elzc@Arista}
+\newcounter{elzc@Fichas}
+\newcounter{elzc@TempFichaActual}
+\newcounter{elzc@TempFichaActualII}
+
+\setlength{\parindent}{0pt}
+\setlength{\unitlength}{1sp}
+\pagestyle{empty}
+
+\newlength{\elzc@DefTPXdim}
+\newlength{\elzc@DefTPYdim}
+\newlength{\elzc@DefFichaXdim}
+\newlength{\elzc@DefFichaYdim}
+\newlength{\elzc@DefLinea}
+\newcounter{elzc@DefArista}
+\newcounter{elzc@DefPunto}
+
+\setlength{\elzc@DefTPXdim}{3.5in}
+\setlength{\elzc@DefTPYdim}{2in}
+\setlength{\elzc@DefFichaXdim}{5in}
+\setlength{\elzc@DefFichaYdim}{3in}
+\setlength{\elzc@DefLinea}{0.1mm}
+\setcounter{elzc@DefArista}{186468}
+\setcounter{elzc@DefPunto}{65536}
+
+\newcommand{\elzc@Cuadricula}[1]{%
+ \setcounter{elzc@TarjXdim}{\elzc@TarjXdim}%
+ \setcounter{elzc@TarjYdim}{\elzc@TarjYdim}%
+ \setcounter{elzc@PapelX}{\textwidth}%
+ \setcounter{elzc@PapelY}{\textheight}%
+ \setcounter{elzc@NumX}{\value{elzc@PapelX} / \value{elzc@TarjXdim}}%
+ \setcounter{elzc@NumY}{\value{elzc@PapelY} / \value{elzc@TarjYdim}}%
+ \setcounter{elzc@ContX}{-1}%
+ \setcounter{elzc@ContY}{-1}%
+ \setcounter{elzc@RestoX}{- \value{elzc@PapelX} + \value{elzc@NumX} * \value{elzc@TarjXdim}}%
+ \begin{picture}(\value{elzc@PapelX},\value{elzc@PapelY})(\value{elzc@XInicial},0)%
+ \loop \ifnum\value{elzc@ContY} < \value{elzc@NumY} \advance\value{elzc@ContY} by 1{%
+ \loop \ifnum\value{elzc@ContX} < \value{elzc@NumX} \advance\value{elzc@ContX} by 1{%
+ \if@elzc@reversoficha
+ \setcounter{elzc@PosX}{\value{elzc@NumX} * \value{elzc@TarjXdim} - %
+ \value{elzc@ContX} * \value{elzc@TarjXdim} - \value{elzc@TarjXdim}}%
+ \else
+ \setcounter{elzc@PosX}{\value{elzc@ContX} * \value{elzc@TarjXdim}}%
+ \fi
+ \setcounter{elzc@PosY}{\value{elzc@ContY} * \value{elzc@TarjYdim}}%
+ \ifnum \value{elzc@ContX} < \value{elzc@NumX}%
+ \ifnum \value{elzc@ContY} < \value{elzc@NumY}%
+ \put(\value{elzc@PosX},\value{elzc@PosY}){%
+ \makebox(\value{elzc@TarjXdim}, \value{elzc@TarjYdim}){%
+ \ifnum\value{elzc@TempFichaActual} < \value{elzc@Fichas}%
+ \addtocounter{elzc@TempFichaActual}{1}%
+ \addtocounter{elzc@TempFichaActualII}{1}%
+ \parbox[t][\elzc@TarjYdim]{\elzc@TarjXdim}{%
+ \if@elzc@reversoficha
+ \expandafter\csname FichaReverso\romannumeral\value{elzc@TempFichaActual}\endcsname
+ \else
+ \expandafter\csname Ficha\romannumeral\value{elzc@TempFichaActual}\endcsname
+ \fi}%
+ \else
+ \parbox[t][\elzc@TarjYdim]{\elzc@TarjXdim}{#1}%
+ \fi}}%
+ \fi
+ \fi
+ \if@elzc@guias
+ \ifnum \value{elzc@ContX} = 0
+ \put(\value{elzc@PosX},\value{elzc@PosY}){\line(-1,0){\value{elzc@Arista}}}%
+ \else
+ \ifnum \value{elzc@ContX} = \value{elzc@NumX}%
+ \put(\value{elzc@PosX},\value{elzc@PosY}){\line(2,0){\value{elzc@Arista}}}%
+ \else
+ \put(\value{elzc@PosX},\value{elzc@PosY}){\line(-1,0){\value{elzc@Arista}}}%
+ \put(\value{elzc@PosX},\value{elzc@PosY}){\line(2,0){\value{elzc@Arista}}}%
+ \fi
+ \fi
+ \ifnum \value{elzc@ContY} = 0
+ \put(\value{elzc@PosX},\value{elzc@PosY}){\line(0,-1){\value{elzc@Arista}}}%
+ \else
+ \ifnum \value{elzc@ContY} = \value{elzc@NumY}%
+ \put(\value{elzc@PosX},\value{elzc@PosY}){\line(0,0){\value{elzc@Arista}}}%
+ \else
+ \put(\value{elzc@PosX},\value{elzc@PosY}){\line(0,0){\value{elzc@Arista}}}%
+ \put(\value{elzc@PosX},\value{elzc@PosY}){\line(0,-1){\value{elzc@Arista}}}%
+ \fi
+ \fi
+ \fi
+ \if@elzc@lineas
+ \multiput(\value{elzc@PosX}, 0)(0, \value{elzc@TarjYdim})%
+ {\value{elzc@NumY}}{\line(0,1){\value{elzc@TarjYdim}}}%
+ \multiput(0, \value{elzc@PosY})(\value{elzc@TarjXdim}, 0)%
+ {\value{elzc@NumX}}{\line(1,0){\value{elzc@TarjXdim}}}%
+ \fi
+ \if@elzc@puntos
+ \put(\value{elzc@PosX}, \value{elzc@PosY}){\circle*{\value{elzc@Punto}}}
+ \fi}%
+ \repeat}%
+ \repeat
+ \end{picture}%
+ \@elzc@lineasfalse\@elzc@puntosfalse\@elzc@guiasfalse\@elzc@reversofichafalse}
+
+\NewDocumentCommand{\elzc@Tarjetas}{s s o o o m o}{%
+ \IfBooleanTF{#2}{\@elzc@lineastrue}{\IfBooleanTF{#1}{\@elzc@puntostrue}{\@elzc@guiastrue}}%
+ \setlength{\elzc@TarjXdim}{#3}%
+ \setlength{\elzc@TarjYdim}{#4}%
+ \IfValueTF{#5}{%
+ \IfBooleanTF{#2}
+ {\linethickness{#5}}
+ {\IfBooleanTF{#1}
+ {\setlength{\elzc@TempLen}{#5}\setcounter{elzc@Punto}{\elzc@TempLen}}
+ {\setlength{\elzc@TempLen}{#5}\setcounter{elzc@Arista}{\elzc@TempLen}%
+ \linethickness{\elzc@DefLinea}}}%
+ }{%
+ \IfBooleanTF{#2}
+ {\linethickness{\elzc@DefLinea}}
+ {\IfBooleanTF{#1}
+ {\setcounter{elzc@Punto}{\value{elzc@DefPunto}}}
+ {\setcounter{elzc@Arista}{\value{elzc@DefArista}}\linethickness{\elzc@DefLinea}}%
+ }%
+ }%
+ \elzc@Cuadricula{\setlength{\unitlength}{1mm}#6}%
+ \if@elzc@fichaconreverso
+ \addtocounter{elzc@TempFichaActual}{-\value{elzc@TempFichaActualII}}%
+ \newpage
+ \setcounter{elzc@XInicial}{\value{elzc@RestoX}}%
+ \@elzc@reversofichatrue
+ \elzc@Cuadricula{\setlength{\unitlength}{1mm}}%
+ \else
+ \IfValueT{#7}{%
+ \immediate\write\@auxout{\string\@twosidetrue\string\@mparswitchtrue}%
+ \newpage
+ \setcounter{elzc@XInicial}{\value{elzc@RestoX}}%
+ \elzc@Cuadricula{\setlength{\unitlength}{1mm}#7}}%
+ \fi
+ \cleardoublepage
+ \setcounter{elzc@TempFichaActualII}{0}%
+ \setcounter{elzc@XInicial}{0}%
+ \ifnum\value{elzc@TempFichaActual} < \value{elzc@Fichas}%
+ \IfBooleanTF{#2}{\MakeIC**[#3][#4][#5]}{\IfBooleanTF{#1}{%
+ \MakeIC*[#3][#4][#5]}{\MakeIC[#3][#4][#5]}}%
+ \fi
+ \setcounter{elzc@Fichas}{0}%
+ \setcounter{elzc@TempFichaActual}{0}%
+ \@elzc@fichaconreversofalse}
+
+\NewDocumentCommand{\MakeBC}{s s O{\elzc@DefTPXdim} O{\elzc@DefTPYdim} o m o}{%
+ \IfBooleanTF{#2}
+ {\elzc@Tarjetas**[#3][#4][#5]{#6}[#7]}
+ {\IfBooleanTF{#1}
+ {\elzc@Tarjetas*[#3][#4][#5]{#6}[#7]}
+ {\elzc@Tarjetas[#3][#4][#5]{#6}[#7]}}}
+
+\NewDocumentCommand{\MakeIC}{s s O{\elzc@DefFichaXdim} O{\elzc@DefFichaYdim} o}{%
+ \IfBooleanTF{#2}
+ {\elzc@Tarjetas**[#3][#4][#5]{}}
+ {\IfBooleanTF{#1}
+ {\elzc@Tarjetas*[#3][#4][#5]{}}
+ {\elzc@Tarjetas[#3][#4][#5]{}}}}
+
+\let\MakeFC\MakeIC
+
+\NewDocumentCommand{\Card}{m o}{%
+ \addtocounter{elzc@Fichas}{1}%
+ \expandafter\def\csname Ficha\romannumeral\value{elzc@Fichas}\endcsname{#1}%
+ \IfValueTF{#2}{%
+ \@elzc@fichaconreversotrue
+ \expandafter\def\csname FichaReverso\romannumeral\value{elzc@Fichas}\endcsname{#2}%
+ \immediate\write\@auxout{\string\@twosidetrue\string\@mparswitchtrue}}
+ {\expandafter\def\csname FichaReverso\romannumeral\value{elzc@Fichas}\endcsname{}}}
+
+\IfFileExists{\jobname.aux}{\input\jobname.aux}
+
+\endinput
+%%
+%% End of file `elzcards.cls'.