texlive[43865] Master: facture (14apr17)

commits+karl at tug.org commits+karl at tug.org
Mon Apr 17 00:21:39 CEST 2017


Revision: 43865
          http://tug.org/svn/texlive?view=revision&revision=43865
Author:   karl
Date:     2017-04-17 00:21:38 +0200 (Mon, 17 Apr 2017)
Log Message:
-----------
facture (14apr17)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/xelatex/facture/exemple.pdf
    trunk/Master/texmf-dist/doc/xelatex/facture/exemplesansTVA.pdf
    trunk/Master/texmf-dist/doc/xelatex/facture/exemplesansremise.pdf
    trunk/Master/texmf-dist/doc/xelatex/facture/facture.pdf
    trunk/Master/texmf-dist/doc/xelatex/facture/makefile
    trunk/Master/texmf-dist/source/xelatex/facture/facture.dtx
    trunk/Master/texmf-dist/tex/xelatex/facture/facture.cls
    trunk/Master/tlpkg/libexec/ctan2tds

Modified: trunk/Master/texmf-dist/doc/xelatex/facture/exemple.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/xelatex/facture/exemplesansTVA.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/xelatex/facture/exemplesansremise.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/xelatex/facture/facture.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/xelatex/facture/makefile
===================================================================
--- trunk/Master/texmf-dist/doc/xelatex/facture/makefile	2017-04-16 22:20:11 UTC (rev 43864)
+++ trunk/Master/texmf-dist/doc/xelatex/facture/makefile	2017-04-16 22:21:38 UTC (rev 43865)
@@ -4,7 +4,7 @@
 	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
 
 

Modified: trunk/Master/texmf-dist/source/xelatex/facture/facture.dtx
===================================================================
--- trunk/Master/texmf-dist/source/xelatex/facture/facture.dtx	2017-04-16 22:20:11 UTC (rev 43864)
+++ trunk/Master/texmf-dist/source/xelatex/facture/facture.dtx	2017-04-16 22:21:38 UTC (rev 43865)
@@ -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}

Modified: trunk/Master/texmf-dist/tex/xelatex/facture/facture.cls
===================================================================
--- trunk/Master/texmf-dist/tex/xelatex/facture/facture.cls	2017-04-16 22:20:11 UTC (rev 43864)
+++ trunk/Master/texmf-dist/tex/xelatex/facture/facture.cls	2017-04-16 22:21:38 UTC (rev 43865)
@@ -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]{

Modified: trunk/Master/tlpkg/libexec/ctan2tds
===================================================================
--- trunk/Master/tlpkg/libexec/ctan2tds	2017-04-16 22:20:11 UTC (rev 43864)
+++ trunk/Master/tlpkg/libexec/ctan2tds	2017-04-16 22:21:38 UTC (rev 43865)
@@ -2976,6 +2976,7 @@
  '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



More information about the tex-live-commits mailing list