% Author : C. Pierquet % licence : Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf % licence svg : CC BY 2.0 FR \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{logoetalab}[2023/11/19 0.1.1 Logo vectoriel ou tikz de la licence 'Licence Ouverte Etalab 2.0'] %====HISTORIQUE % v 0.1.1 Ajout d'une version full tikz % v 0.1.0 Version initiale %====BASE \RequirePackage{graphicx} \RequirePackage{tikz} \usetikzlibrary{calc} \RequirePackage{xstring} \RequirePackage{calc} \RequirePackage{simplekv} %====DIMENSIONS \newlength{\tmp@logo@hauteur@totale} \newlength{\tmp@logo@profondeur} %====CLÉS \defKV[iconetalab]{% Couleur=\def\tmplogocouleur{#1},% TexteLegende=\def\tmplogotextleg{#1} } \setKVdefault[iconetalab]{% Couleur=Noir,% Legende=false,% TexteLegende={Publié sous licence Etalab 2.0} } %====COMMANDES \NewDocumentCommand\loetalab{ s O{} }{% \useKVdefault[iconetalab]% \setKV[iconetalab]{#2}% \settototalheight{\tmp@logo@hauteur@totale}{\hbox{qB}}% \settodepth{\tmp@logo@profondeur}{\hbox{q}}% \IfBooleanTF{#1}% {% \IfFileExists{LogoLicenceOuverte-\tmplogocouleur-H.pdf}% {% \raisebox{-\tmp@logo@profondeur+0.05\tmp@logo@hauteur@totale}{\includegraphics[height=0.9\tmp@logo@hauteur@totale]{LogoLicenceOuverte-\tmplogocouleur-H.pdf}}% }% {% \raisebox{-\tmp@logo@profondeur+0.05\tmp@logo@hauteur@totale}{\includegraphics[height=0.9\tmp@logo@hauteur@totale]{LogoLicenceOuverte-Noir-H.pdf}}% }% }% {% \IfFileExists{LogoLicenceOuverte-\tmplogocouleur-V.pdf}% {% \raisebox{-\tmp@logo@profondeur+0.05\tmp@logo@hauteur@totale}{\includegraphics[height=0.9\tmp@logo@hauteur@totale]{LogoLicenceOuverte-\tmplogocouleur-V.pdf}}% }% {% \raisebox{-\tmp@logo@profondeur+0.05\tmp@logo@hauteur@totale}{\includegraphics[height=0.9\tmp@logo@hauteur@totale]{LogoLicenceOuverte-Noir-V.pdf}}% }% }% \ifboolKV[iconetalab]{Legende}{~\tmplogotextleg}{}% } \NewDocumentCommand\affloetalab{ s O{} }{% \useKVdefault[iconetalab]% \setKV[iconetalab]{#2}% \settototalheight{\tmp@logo@hauteur@totale}{\hbox{B}}% \IfBooleanTF{#1}% {% \IfFileExists{LogoLicenceOuverte-\tmplogocouleur-H.pdf}% {% \raisebox{-0.5\tmp@logo@hauteur@totale}{\includegraphics[height=2\tmp@logo@hauteur@totale]{LogoLicenceOuverte-\tmplogocouleur-H.pdf}}% }% {% \raisebox{-0.5\tmp@logo@hauteur@totale}{\includegraphics[height=2\tmp@logo@hauteur@totale]{LogoLicenceOuverte-Noir-H.pdf}}% }% }% {% \IfFileExists{LogoLicenceOuverte-\tmplogocouleur-V.pdf}% {% \raisebox{-0.5\tmp@logo@hauteur@totale}{\includegraphics[height=2\tmp@logo@hauteur@totale]{LogoLicenceOuverte-\tmplogocouleur-V.pdf}}% }% {% \raisebox{-0.5\tmp@logo@hauteur@totale}{\includegraphics[height=2\tmp@logo@hauteur@totale]{LogoLicenceOuverte-Noir-V.pdf}}% }% }% \ifboolKV[iconetalab]{Legende}{~\tmplogotextleg}{}% } %====TIKZ \defKV[logoetalabtikz]{% Hauteur=\def\LogoEtalabTikzHauteur{#1},% Couleur=\def\LogoEtalabTikzCouleur{#1},% DecalageV=\def\LogoEtalabTikzOffset{#1} } \setKVdefault[logoetalabtikz]{% Hauteur=auto,% Couleur=black,% DecalageV=auto } \newlength{\tmplogoprofondeur} \newlength{\tmplogohauteurtotale} \newlength{\tmplogooffset} \NewDocumentCommand\loetalabtkz{ s O{} D<>{} }{% \settodepth{\tmplogoprofondeur}{\hbox{q}}% \useKVdefault[logoetalabtikz]% \setKV[logoetalabtikz]{#2}% \IfStrEq{\LogoEtalabTikzHauteur}{auto}% {% \settototalheight{\tmplogohauteurtotale}{\hbox{qB}}% \IfStrEq{\LogoEtalabTikzOffset}{auto}% {% \setlength{\tmplogooffset}{-\tmplogoprofondeur+0.05\tmplogohauteurtotale}% }% {% \setlength{\tmplogooffset}{\LogoEtalabTikzOffset}% }% \def\tmplogoscale{1}% }% {% \setlength{\tmplogohauteurtotale}{\LogoEtalabTikzHauteur}% \IfStrEq{\LogoEtalabTikzOffset}{auto}% {% \setlength{\tmplogooffset}{0pt}% }% {% \setlength{\tmplogooffset}{\LogoEtalabTikzOffset}% }% \def\tmplogoscale{1}% }% \raisebox{\tmplogooffset}{% \IfBooleanTF{#1}% {% \begin{tikzpicture}[scale={0.9*\tmplogoscale},x={\tmplogohauteurtotale},y={\tmplogohauteurtotale},outer sep=0pt,#3] %cadre \draw[draw=none,fill=\LogoEtalabTikzCouleur,rounded corners={1.5*0.125*\tmplogohauteurtotale}] (0,0) rectangle (2,1) ; %cadre haut \draw[draw=none,fill=white,rounded corners={1.5*0.125*0.875*\tmplogohauteurtotale}] ({0.5*0.125},{0.0625}) rectangle++ ({0.875},{0.875}) ; %I gauche \draw[draw=none,fill=\LogoEtalabTikzCouleur] ({0.15},{0.25}) rectangle++ ({0.1},{0.5}) ; %I droit \draw[draw=none,fill=white] ({1.85},{0.25}) rectangle++ ({-0.1},{0.5}) ; %O gauche \draw[draw=none,fill=\LogoEtalabTikzCouleur] ({0.6},{0.5}) circle[radius={0.25}] ; \draw[draw=none,fill=white] ({0.6},{0.5}) circle[radius={0.15}] ; %O droit \draw[draw=none,fill=white] ({1.4},{0.5}) circle[radius={0.25}] ; \draw[draw=none,fill=\LogoEtalabTikzCouleur] ({1.4},{0.5}) circle[radius={0.15}] ; \end{tikzpicture}% }% {% \begin{tikzpicture}[scale={0.5*0.9*\tmplogoscale},x={\tmplogohauteurtotale},y={\tmplogohauteurtotale},#3] %cadre \draw[draw=none,fill=\LogoEtalabTikzCouleur,rounded corners={0.75*0.125*\tmplogohauteurtotale}] (0,0) rectangle (1,2) ; %cadre haut \draw[draw=none,fill=white,rounded corners={0.75*0.125*0.875*\tmplogohauteurtotale}] ({0.5*0.125},{1.0625}) rectangle++ ({0.875},{0.875}) ; %I haut \draw[draw=none,fill=\LogoEtalabTikzCouleur] ({0.15},{1.25}) rectangle++ ({0.1},{0.5}) ; %I bas \draw[draw=none,fill=white] ({0.85},{0.25}) rectangle++({-0.1},{0.5}) ; %O haut \draw[draw=none,fill=\LogoEtalabTikzCouleur] ({0.6},{1.5}) circle[radius={0.25}] ; \draw[draw=none,fill=white] ({0.6},{1.5}) circle[radius={0.15}] ; %O bas \draw[draw=none,fill=white] ({0.4},{0.5}) circle[radius={0.25}] ; \draw[draw=none,fill=\LogoEtalabTikzCouleur] ({0.4},{0.5}) circle[radius={0.15}] ; \end{tikzpicture}% }% }% } \NewDocumentCommand\affloetalabtkz{ s O{} D<>{} }{% \settototalheight{\tmplogohauteurtotale}{\hbox{B}}% \useKVdefault[logoetalabtikz]% \setKV[logoetalabtikz]{#2}% \raisebox{-0.5\tmplogohauteurtotale}{% \IfBooleanTF{#1}%H, sinon V {% \begin{tikzpicture}[x={2*\tmplogohauteurtotale},y={2*\tmplogohauteurtotale},outer sep=0pt,#3] %cadre \draw[draw=none,fill=\LogoEtalabTikzCouleur,rounded corners={2.22*0.125*\tmplogohauteurtotale}] (0,0) rectangle (2,1) ; %cadre haut \draw[draw=none,fill=white,rounded corners={2.22*0.125*0.875*\tmplogohauteurtotale}] ({0.5*0.125},{0.0625}) rectangle++ ({0.875},{0.875}) ; %I gauche \draw[draw=none,fill=\LogoEtalabTikzCouleur] ({0.15},{0.25}) rectangle++ ({0.1},{0.5}) ; %I droit \draw[draw=none,fill=white] ({1.85},{0.25}) rectangle++ ({-0.1},{0.5}) ; %O gauche \draw[draw=none,fill=\LogoEtalabTikzCouleur] ({0.6},{0.5}) circle[radius={0.25}] ; \draw[draw=none,fill=white] ({0.6},{0.5}) circle[radius={0.15}] ; %O droit \draw[draw=none,fill=white] ({1.4},{0.5}) circle[radius={0.25}] ; \draw[draw=none,fill=\LogoEtalabTikzCouleur] ({1.4},{0.5}) circle[radius={0.15}] ; \end{tikzpicture}% }% {% \begin{tikzpicture}[x={\tmplogohauteurtotale},y={\tmplogohauteurtotale},#3] %cadre \draw[draw=none,fill=\LogoEtalabTikzCouleur,rounded corners={1.11*0.125*\tmplogohauteurtotale}] (0,0) rectangle (1,2) ; %cadre haut \draw[draw=none,fill=white,rounded corners={1.11*0.125*0.875*\tmplogohauteurtotale}] ({0.5*0.125},{1.0625}) rectangle++ ({0.875},{0.875}) ; %I haut \draw[draw=none,fill=\LogoEtalabTikzCouleur] ({0.15},{1.25}) rectangle++ ({0.1},{0.5}) ; %I bas \draw[draw=none,fill=white] ({0.85},{0.25}) rectangle++({-0.1},{0.5}) ; %O haut \draw[draw=none,fill=\LogoEtalabTikzCouleur] ({0.6},{1.5}) circle[radius={0.25}] ; \draw[draw=none,fill=white] ({0.6},{1.5}) circle[radius={0.15}] ; %O bas \draw[draw=none,fill=white] ({0.4},{0.5}) circle[radius={0.25}] ; \draw[draw=none,fill=\LogoEtalabTikzCouleur] ({0.4},{0.5}) circle[radius={0.15}] ; \end{tikzpicture}% }% }% } \endinput