summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-04-16 22:21:38 +0000
committerKarl Berry <karl@freefriends.org>2017-04-16 22:21:38 +0000
commitca335820d525cec5e0c68237c97333b952e61778 (patch)
treeb026c8d97a2345c850181f65f02fc8e57ad84694
parent93b672829910ccaed7c6d80cdd9a1530dbe44f27 (diff)
facture (14apr17)
git-svn-id: svn://tug.org/texlive/trunk@43865 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/xelatex/facture/exemple.pdfbin23421 -> 23292 bytes
-rw-r--r--Master/texmf-dist/doc/xelatex/facture/exemplesansTVA.pdfbin19457 -> 19387 bytes
-rw-r--r--Master/texmf-dist/doc/xelatex/facture/exemplesansremise.pdfbin22988 -> 22875 bytes
-rw-r--r--Master/texmf-dist/doc/xelatex/facture/facture.pdfbin95365 -> 97571 bytes
-rw-r--r--Master/texmf-dist/doc/xelatex/facture/makefile2
-rw-r--r--Master/texmf-dist/source/xelatex/facture/facture.dtx103
-rw-r--r--Master/texmf-dist/tex/xelatex/facture/facture.cls82
-rwxr-xr-xMaster/tlpkg/libexec/ctan2tds1
8 files changed, 99 insertions, 89 deletions
diff --git a/Master/texmf-dist/doc/xelatex/facture/exemple.pdf b/Master/texmf-dist/doc/xelatex/facture/exemple.pdf
index 8f7738641ff..97cc517f2a9 100644
--- a/Master/texmf-dist/doc/xelatex/facture/exemple.pdf
+++ b/Master/texmf-dist/doc/xelatex/facture/exemple.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/xelatex/facture/exemplesansTVA.pdf b/Master/texmf-dist/doc/xelatex/facture/exemplesansTVA.pdf
index 4f5cfac4a36..c01b81aabfb 100644
--- a/Master/texmf-dist/doc/xelatex/facture/exemplesansTVA.pdf
+++ b/Master/texmf-dist/doc/xelatex/facture/exemplesansTVA.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/xelatex/facture/exemplesansremise.pdf b/Master/texmf-dist/doc/xelatex/facture/exemplesansremise.pdf
index 376ec4bf9f5..ed8f12a3997 100644
--- a/Master/texmf-dist/doc/xelatex/facture/exemplesansremise.pdf
+++ b/Master/texmf-dist/doc/xelatex/facture/exemplesansremise.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/xelatex/facture/facture.pdf b/Master/texmf-dist/doc/xelatex/facture/facture.pdf
index 91fab605c11..414e9ea08c3 100644
--- a/Master/texmf-dist/doc/xelatex/facture/facture.pdf
+++ b/Master/texmf-dist/doc/xelatex/facture/facture.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/xelatex/facture/makefile b/Master/texmf-dist/doc/xelatex/facture/makefile
index d34366b6cfd..a56a60ca62b 100644
--- a/Master/texmf-dist/doc/xelatex/facture/makefile
+++ b/Master/texmf-dist/doc/xelatex/facture/makefile
@@ -4,7 +4,7 @@ all:facture.pdf exemple.pdf exemplesansTVA.pdf exemplesansremise.pdf
rm -f ../facture.zip
rm -rf facture
mkdir facture
- ln *pdf *ins *dtx *cls *tex README makefile facture
+ ln *pdf *ins *dtx *tex README makefile facture
zip -r ../facture.zip facture
diff --git a/Master/texmf-dist/source/xelatex/facture/facture.dtx b/Master/texmf-dist/source/xelatex/facture/facture.dtx
index 094413bb823..b1878b4eba7 100644
--- a/Master/texmf-dist/source/xelatex/facture/facture.dtx
+++ b/Master/texmf-dist/source/xelatex/facture/facture.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
% Droits d'auteur :
-% - Maïeul Rouquette 2011-2014
+% - Maïeul Rouquette 2011-…
% - Joël Gombin 2014
% Licence Creative Commons - Paternité -Partage des Conditions Initiales à l'identique
% http://creativecommons.org/licenses/by-sa/2.0/fr/
@@ -31,13 +31,15 @@
\end{document}
%</driver>
%\fi
-% \CheckSum{527}
+% \CheckSum{584}
% \changes{v1.0}{2011/09/10}{Première version}
% \changes{v1.1}{2014/09/16}{Laisser le choix de la marge à l'utilisateur}
% \changes{v1.1}{2014/09/16}{Possibilité de modifier la taille du tableau.}
% \changes{v1.2}{2015/01/16}{Possibilité de produire des factures sans la colonne remise.}
-% \def\filedate{16/01/2015}
-% \def\fileversion{1.2}
+% \changes{v1.2.2}{2015/01/16}{Corrections de quelques problèmes d'alignement.}
+% \changes{v1.2.2}{2017/04/12}{Corrections d'un bug si le numéro de facture n'est pas défini.}
+% \def\filedate{2017/04/12}
+% \def\fileversion{1.2.2}
% \date{\filedate}
% \title{La class \textsf{facture}\thanks{Ce document correspond à la version~\fileversion de \textsf{facture} datée du \filedate.}}
%\author{Maïeul Rouquette et Joël Gombin}
@@ -65,7 +67,7 @@
%\documentclass{facture}
%\end{verbatim}
%
-% Permet de générer une facture avec TVA. Celle-ci est définie par défaut à 19,6~\%, mais il est possible de modifier le taux, grâce à la commande \DescribeMacro{\TVAdefaut}\cmd{\TVAdefaut}\marg{taux}. Par exemple pour avoir un taux de 5,5~\% :
+% Permet de générer une facture avec TVA. Celle-ci est définie par défaut à 19,6~\%\footnote{Valeur lors de la sortie de la première version de la classe. Pour éviter que des factures créées avant la variation du taux mais recompilées après la variation ne voit leur TVA changer, ce taux restera fixe d'une version à l'autre de la classe.}, mais il est possible de modifier le taux, grâce à la commande \DescribeMacro{\TVAdefaut}\cmd{\TVAdefaut}\marg{taux}. Par exemple pour avoir un taux de 5,5~\% :
%\begin{verbatim}
%\TVAdefaut{5,5}
%\end{verbatim}
@@ -151,7 +153,7 @@
%<*facture>
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{facture}[16/01/2015 v1.2]
+\ProvidesClass{facture}[2017/04/12/04 v1.2.2]
\LoadClass[a4paper]{article}%On se base sur la classe article
\RequirePackage{fontspec}
\RequirePackage{xunicode}
@@ -168,11 +170,6 @@
\RequirePackage{advdate}%Pour manipuler les dates
\RequirePackage{xargs}%Pour des arguments conditionnels
% \end{macrocode}
-%\subsection{Option sansreduction}
-% \begin{macrocode}
-\newif\ifsansreduction
-\DeclareOption{sansreduction}{\sansreductiontrue}
-% \end{macrocode}
%\subsection{Option sansTVA}
% \begin{macrocode}
\newif\ifsansTVA
@@ -231,10 +228,18 @@
% \end{macrocode}
%\subsection{Largeur des colonnes}\label{largeurCols}
% On peut redéfinir les commandes ci-dessous pour modifier la largeur des commandes. Attention à ne pas dépasser un total de 1\cmd{\textwidth} !
+% Le package se charge d'ajuster automatiquement pour supprimer la marge intérieure.
+% La largeur des chiffres est calculée automatiquement en fonction de la largeur du descriptif et de la largeur de la TVA. Il est donc fortement recommandé de ne modifiée que \cs{largeurDescriptif} et \cs{largeurTVA}.
% \begin{macrocode}
\newcommand{\largeurDescriptif}{0.2\textwidth}
-\newcommand{\largeurChiffres}{0.2\textwidth}
-\newcommand{\largeurChiffresAvecTVA}{0.1\textwidth}
+\newcommand{\largeurTVA}{0.2\textwidth}
+\ifsansremise
+ \newcommand{\largeurChiffresAvecTVA}{\dimexpr (\textwidth-\largeurDescriptif-\largeurTVA)/4\relax}
+ \newcommand{\largeurChiffres}{\dimexpr (\textwidth-\largeurDescriptif)/3 \relax}
+\else
+ \newcommand{\largeurChiffresAvecTVA}{\dimexpr (\textwidth-\largeurDescriptif-\largeurTVA)/5\relax}
+ \newcommand{\largeurChiffres}{\dimexpr (\textwidth-\largeurDescriptif)/4 \relax}
+\fi
% \end{macrocode}
%
%\subsection{Réglages mathématiques}\label{math}
@@ -289,8 +294,8 @@
%
%Ensuite déterminer la place que cela prend, puis tracer l'encadré.
% \begin{macrocode}
- \coordinate[xshift=-1\textwidth,yshift=1ex] (a) at (b.north);
- \coordinate[xshift=1em,yshift=-1ex] (c) at (b.south);
+ \coordinate[xshift=-\textwidth-\epaisseurcadre,yshift=1ex] (a) at (b.north);
+ \coordinate[xshift=-\epaisseurcadre,yshift=-1ex] (c) at (b.south);
\draw[color=encadre,line width=\epaisseurcadre] (a) rectangle (c);
\end{tikzpicture}
% \end{macrocode}
@@ -340,8 +345,8 @@
\libelle{{\datetxt}} \today \\
\ifdef{\@numero}{%
\libelle{{\@type\ntxt}} \@numero
+ \\
}{}
- \\
\ifdef{\@codedest}{%
\libelle{{\codeclient}} \@codedest
}{}
@@ -376,14 +381,18 @@
\newenvironment{facture}{%
\setlength{\extrarowheight}{0.5ex}
\setlength{\tabcolsep}{0.5em}
+ \edef\@largeurDescriptif{\dimexpr\largeurDescriptif -2\tabcolsep\relax}
+ \edef\@largeurChiffres{\dimexpr\largeurChiffres -2\tabcolsep\relax}
+ \edef\@largeurTVA{\dimexpr\largeurTVA -2\tabcolsep\relax}
+ \edef\@largeurChiffresAvecTVA{\dimexpr\largeurChiffresAvecTVA -2\tabcolsep\relax}
\arrayrulecolor{encadre}
\ifsansTVA%
\ifsansremise%
\begin{longtable}{%
- |p{\largeurDescriptif}%Descriptif
- |P{\largeurChiffres}%Qt
- |P{\largeurChiffres}%Prix
- |P{\largeurChiffres}|%Total
+ |p{\@largeurDescriptif}%Descriptif
+ |P{\@largeurChiffres}%Qt
+ |P{\@largeurChiffres}%Prix
+ |P{\@largeurChiffres}|%Total
}%
\hline%
\rowcolor{entetes}%
@@ -394,11 +403,11 @@
\tabularnewline[1ex]%
\else%
\begin{longtable}{%
- |p{\largeurDescriptif}%Descriptif
- |P{\largeurChiffres}%Qt
- |P{\largeurChiffres}%Prix
- |P{\largeurChiffres}%Remise
- |P{\largeurChiffres}|%Total
+ |p{\@largeurDescriptif}%Descriptif
+ |P{\@largeurChiffres}%Qt
+ |P{\@largeurChiffres}%Prix
+ |P{\@largeurChiffres}%Remise
+ |P{\@largeurChiffres}|%Total
}%
\hline%
\rowcolor{entetes}%
@@ -412,12 +421,12 @@
\else%
\ifsansremise%
\begin{longtable}{%
- |p{\largeurDescriptif}|%Descriptif
- P{\largeurChiffresAvecTVA}|%Qt
- P{\largeurChiffresAvecTVA}|%HT unitaire
- P{\largeurChiffresAvecTVA}|%Totalht
- P{\largeurChiffresAvecTVA}|%TVA
- P{\largeurChiffresAvecTVA}|%Total TTC
+ |p{\@largeurDescriptif}|%Descriptif
+ P{\@largeurChiffresAvecTVA}|%Qt
+ P{\@largeurChiffresAvecTVA}|%HT unitaire
+ P{\@largeurChiffresAvecTVA}|%Totalht
+ P{\@largeurTVA}|%TVA
+ P{\@largeurChiffresAvecTVA}|%Total TTC
}%
\hline%
\rowcolor{entetes}
@@ -430,13 +439,13 @@
\else%
\begin{longtable}{%
- |p{\largeurDescriptif}|%Descriptif
- P{\largeurChiffresAvecTVA}|%Qt
- P{\largeurChiffresAvecTVA}|%HT unitaire
- P{\largeurChiffresAvecTVA}|%Remise
- P{\largeurChiffresAvecTVA}|%Totalht
- P{\largeurChiffresAvecTVA}|%TVA
- P{\largeurChiffresAvecTVA}|%Total TTC
+ |p{\@largeurDescriptif}|%Descriptif
+ P{\@largeurChiffresAvecTVA}|%Qt
+ P{\@largeurChiffresAvecTVA}|%HT unitaire
+ P{\@largeurChiffresAvecTVA}|%Remise
+ P{\@largeurChiffresAvecTVA}|%Totalht
+ P{\@largeurTVA}|%TVA
+ P{\@largeurChiffresAvecTVA}|%Total TTC
}%
\hline%
\rowcolor{entetes}
@@ -459,20 +468,16 @@
{%
\end{longtable}
% \end{macrocode}
-%On affiche ensuite les totaux, qu'on place grâce à \emph{TikZ}. Le cercle de 0,001 de diamètre sert à faire prendre à la figure beamer le plus de place possible, pour que les textes soient alignés à droite.
+%On affiche ensuite les totaux.
% \begin{macrocode}
- \begin{tikzpicture}
- \draw[color=white] (0,0) circle (0.001);
- \node[right,xshift=0.66\textwidth,text width=0.33\textwidth]{%
\ifsansTVA%
- \hfill \libelle{\tottxt:} \numprint[\unite]{\tot}\\%
- \else%
- \libelle{\totHTtxt:}\hfill \numprint[\unite]{\totHT} \\%
- \libelle{\totTVAtxt:}\hfill \numprint[\unite]{\totTVA} \\%
- \libelle{\totTTCtxt:}\hfill \numprint[\unite]{\totTTC} \\
+ \noindent\hspace{0.66\textwidth}\hfill \libelle{\tottxt:} \numprint[\unite]{\tot}\\%
+ \else%
+ \noindent\hspace{0.66\textwidth}\libelle{\totHTtxt:}\hfill \numprint[\unite]{\totHT}\\%
+ \hbox{}\hspace{0.66\textwidth}\libelle{\totTVAtxt:}\hfill \numprint[\unite]{\totTVA}\\%
+ \hbox{}\noindent\hspace{0.66\textwidth}\libelle{\totTTCtxt:}\hfill \numprint[\unite]{\totTTC}\\
\fi
- \postTotaux};
- \end{tikzpicture}
+ \hspace{0.66\textwidth}\postTotaux
}
% \end{macrocode}
diff --git a/Master/texmf-dist/tex/xelatex/facture/facture.cls b/Master/texmf-dist/tex/xelatex/facture/facture.cls
index 3616a6be70f..83530cfc872 100644
--- a/Master/texmf-dist/tex/xelatex/facture/facture.cls
+++ b/Master/texmf-dist/tex/xelatex/facture/facture.cls
@@ -11,7 +11,7 @@
%% http://creativecommons.org/licenses/by-sa/2.0/fr/
%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{facture}[16/01/2015 v1.2]
+\ProvidesClass{facture}[2017/04/12/04 v1.2.2]
\LoadClass[a4paper]{article}%On se base sur la classe article
\RequirePackage{fontspec}
\RequirePackage{xunicode}
@@ -27,8 +27,6 @@
\RequirePackage{colortbl}
\RequirePackage{advdate}%Pour manipuler les dates
\RequirePackage{xargs}%Pour des arguments conditionnels
-\newif\ifsansreduction
-\DeclareOption{sansreduction}{\sansreductiontrue}
\newif\ifsansTVA
\DeclareOption{sansTVA}{\sansTVAtrue}
\newif\ifsansremise
@@ -66,8 +64,14 @@
\newcommand{\postTotaux}{}
\fi
\newcommand{\largeurDescriptif}{0.2\textwidth}
-\newcommand{\largeurChiffres}{0.2\textwidth}
-\newcommand{\largeurChiffresAvecTVA}{0.1\textwidth}
+\newcommand{\largeurTVA}{0.2\textwidth}
+\ifsansremise
+ \newcommand{\largeurChiffresAvecTVA}{\dimexpr (\textwidth-\largeurDescriptif-\largeurTVA)/4\relax}
+ \newcommand{\largeurChiffres}{\dimexpr (\textwidth-\largeurDescriptif)/3 \relax}
+\else
+ \newcommand{\largeurChiffresAvecTVA}{\dimexpr (\textwidth-\largeurDescriptif-\largeurTVA)/5\relax}
+ \newcommand{\largeurChiffres}{\dimexpr (\textwidth-\largeurDescriptif)/4 \relax}
+\fi
\npaddmissingzero
\nprounddigits{2}
\def\@TVAdefaut{19,6}
@@ -94,8 +98,8 @@
\noindent\node (b)[xshift=0.5\textwidth,text width=0.5\textwidth, right]{%
\@adresseemet%
};
- \coordinate[xshift=-1\textwidth,yshift=1ex] (a) at (b.north);
- \coordinate[xshift=1em,yshift=-1ex] (c) at (b.south);
+ \coordinate[xshift=-\textwidth-\epaisseurcadre,yshift=1ex] (a) at (b.north);
+ \coordinate[xshift=-\epaisseurcadre,yshift=-1ex] (c) at (b.south);
\draw[color=encadre,line width=\epaisseurcadre] (a) rectangle (c);
\end{tikzpicture}
@@ -129,8 +133,8 @@
\libelle{{\datetxt}} \today \\
\ifdef{\@numero}{%
\libelle{{\@type\ntxt}} \@numero
+ \\
}{}
- \\
\ifdef{\@codedest}{%
\libelle{{\codeclient}} \@codedest
}{}
@@ -151,14 +155,18 @@
\newenvironment{facture}{%
\setlength{\extrarowheight}{0.5ex}
\setlength{\tabcolsep}{0.5em}
+ \edef\@largeurDescriptif{\dimexpr\largeurDescriptif -2\tabcolsep\relax}
+ \edef\@largeurChiffres{\dimexpr\largeurChiffres -2\tabcolsep\relax}
+ \edef\@largeurTVA{\dimexpr\largeurTVA -2\tabcolsep\relax}
+ \edef\@largeurChiffresAvecTVA{\dimexpr\largeurChiffresAvecTVA -2\tabcolsep\relax}
\arrayrulecolor{encadre}
\ifsansTVA%
\ifsansremise%
\begin{longtable}{%
- |p{\largeurDescriptif}%Descriptif
- |P{\largeurChiffres}%Qt
- |P{\largeurChiffres}%Prix
- |P{\largeurChiffres}|%Total
+ |p{\@largeurDescriptif}%Descriptif
+ |P{\@largeurChiffres}%Qt
+ |P{\@largeurChiffres}%Prix
+ |P{\@largeurChiffres}|%Total
}%
\hline%
\rowcolor{entetes}%
@@ -169,11 +177,11 @@
\tabularnewline[1ex]%
\else%
\begin{longtable}{%
- |p{\largeurDescriptif}%Descriptif
- |P{\largeurChiffres}%Qt
- |P{\largeurChiffres}%Prix
- |P{\largeurChiffres}%Remise
- |P{\largeurChiffres}|%Total
+ |p{\@largeurDescriptif}%Descriptif
+ |P{\@largeurChiffres}%Qt
+ |P{\@largeurChiffres}%Prix
+ |P{\@largeurChiffres}%Remise
+ |P{\@largeurChiffres}|%Total
}%
\hline%
\rowcolor{entetes}%
@@ -187,12 +195,12 @@
\else%
\ifsansremise%
\begin{longtable}{%
- |p{\largeurDescriptif}|%Descriptif
- P{\largeurChiffresAvecTVA}|%Qt
- P{\largeurChiffresAvecTVA}|%HT unitaire
- P{\largeurChiffresAvecTVA}|%Totalht
- P{\largeurChiffresAvecTVA}|%TVA
- P{\largeurChiffresAvecTVA}|%Total TTC
+ |p{\@largeurDescriptif}|%Descriptif
+ P{\@largeurChiffresAvecTVA}|%Qt
+ P{\@largeurChiffresAvecTVA}|%HT unitaire
+ P{\@largeurChiffresAvecTVA}|%Totalht
+ P{\@largeurTVA}|%TVA
+ P{\@largeurChiffresAvecTVA}|%Total TTC
}%
\hline%
\rowcolor{entetes}
@@ -205,13 +213,13 @@
\else%
\begin{longtable}{%
- |p{\largeurDescriptif}|%Descriptif
- P{\largeurChiffresAvecTVA}|%Qt
- P{\largeurChiffresAvecTVA}|%HT unitaire
- P{\largeurChiffresAvecTVA}|%Remise
- P{\largeurChiffresAvecTVA}|%Totalht
- P{\largeurChiffresAvecTVA}|%TVA
- P{\largeurChiffresAvecTVA}|%Total TTC
+ |p{\@largeurDescriptif}|%Descriptif
+ P{\@largeurChiffresAvecTVA}|%Qt
+ P{\@largeurChiffresAvecTVA}|%HT unitaire
+ P{\@largeurChiffresAvecTVA}|%Remise
+ P{\@largeurChiffresAvecTVA}|%Totalht
+ P{\@largeurTVA}|%TVA
+ P{\@largeurChiffresAvecTVA}|%Total TTC
}%
\hline%
\rowcolor{entetes}
@@ -230,18 +238,14 @@
}%
{%
\end{longtable}
- \begin{tikzpicture}
- \draw[color=white] (0,0) circle (0.001);
- \node[right,xshift=0.66\textwidth,text width=0.33\textwidth]{%
\ifsansTVA%
- \hfill \libelle{\tottxt:} \numprint[\unite]{\tot}\\%
+ \noindent\hspace{0.66\textwidth}\hfill \libelle{\tottxt:} \numprint[\unite]{\tot}\\%
\else%
- \libelle{\totHTtxt:}\hfill \numprint[\unite]{\totHT} \\%
- \libelle{\totTVAtxt:}\hfill \numprint[\unite]{\totTVA} \\%
- \libelle{\totTTCtxt:}\hfill \numprint[\unite]{\totTTC} \\
+ \noindent\hspace{0.66\textwidth}\libelle{\totHTtxt:}\hfill \numprint[\unite]{\totHT}\\%
+ \hbox{}\hspace{0.66\textwidth}\libelle{\totTVAtxt:}\hfill \numprint[\unite]{\totTVA}\\%
+ \hbox{}\noindent\hspace{0.66\textwidth}\libelle{\totTTCtxt:}\hfill \numprint[\unite]{\totTTC}\\
\fi
- \postTotaux};
- \end{tikzpicture}
+ \hspace{0.66\textwidth}\postTotaux
}
\newcommand{\lignesansTVA}[5]{
diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds
index 5e62c0c5aa3..65b16af933b 100755
--- a/Master/tlpkg/libexec/ctan2tds
+++ b/Master/tlpkg/libexec/ctan2tds
@@ -2976,6 +2976,7 @@ $standardclean = '\.head|\.tmp|\.dvi|\.log|\.out|\.aux|\.toc|\.lof|\.lot'
'emisa' => 'emisa-instructions.pdf', # symlink
'epslatex-fr' => 'R?Danger.eps', # unneeded, name clash
'exceltex' => 'manpage.pdf', # no source
+ 'facture' => 'issue7.pdf', # no source
'flacards' => 'flacards.pdf', # no source
'gfsartemisia' => 'A*Specimen.pdf', # no source
'gfsbaskerville'=> 'B*Specimen.pdf', # no source