From 7d729d390cb5a7d8141323ad4c09e50d71f93d8f Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 11 Apr 2020 22:46:17 +0000 Subject: pgfornament (6apr20) git-svn-id: svn://tug.org/texlive/trunk@54670 c570f23f-e606-0410-a88d-b1316a301751 --- .../tex/latex/pgfornament/pgflibraryam.code.tex | 42 ++++ .../latex/pgfornament/pgflibrarypgfhan.code.tex | 110 ++++++++++ .../latex/pgfornament/pgflibraryvectorian.code.tex | 220 ++++++++++++++++++++ .../tex/latex/pgfornament/pgfornament.sty | 229 +++++++++++++++++++++ .../texmf-dist/tex/latex/pgfornament/tikzrput.sty | 113 ++++++++++ 5 files changed, 714 insertions(+) create mode 100644 Master/texmf-dist/tex/latex/pgfornament/pgflibraryam.code.tex create mode 100644 Master/texmf-dist/tex/latex/pgfornament/pgflibrarypgfhan.code.tex create mode 100644 Master/texmf-dist/tex/latex/pgfornament/pgflibraryvectorian.code.tex create mode 100644 Master/texmf-dist/tex/latex/pgfornament/pgfornament.sty create mode 100644 Master/texmf-dist/tex/latex/pgfornament/tikzrput.sty (limited to 'Master/texmf-dist/tex/latex/pgfornament') diff --git a/Master/texmf-dist/tex/latex/pgfornament/pgflibraryam.code.tex b/Master/texmf-dist/tex/latex/pgfornament/pgflibraryam.code.tex new file mode 100644 index 00000000000..ee4fa06d32c --- /dev/null +++ b/Master/texmf-dist/tex/latex/pgfornament/pgflibraryam.code.tex @@ -0,0 +1,42 @@ +% pgflibraryam.code.tex (utf8 encoding) +% Copyright 2020 Alain Matthes +% This work 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.3 or later is part of all distributions of LaTeX +% version 2005/12/01 or later. +% +% This work has the LPPL maintenance status “maintained”. +% +% The Current Maintainer of this work is Alain Matthes. +% Original idea of F Fradin and H Voss +\typeout{2020/04/06 1.1 pgflibraryam.code.tex} +\makeatletter + +% dimensions des motifs +\def\@pgfornamentDim#1{% dim en bp +\ifcase#1\relax% +\or\def\@pgfornamentX{136}\def\@pgfornamentY{107}% 1 +\or\def\@pgfornamentX{133}\def\@pgfornamentY{48}% 2 +\or\def\@pgfornamentX{133}\def\@pgfornamentY{48}% 2 +\fi% +}% +% appels des motifs +\def\pgf@@ornament#1{% +\begingroup +\def\i{\pgfusepath{clip}} +\let\o\pgfpathclose +\let\s\pgfusepathqfillstroke +\def\p ##1##2{\pgfqpoint{##1bp}{##2bp}} +\def\m ##1 ##2 {\pgfpathmoveto{\p{##1}{##2}}} +\def\l ##1 ##2 {\pgfpathlineto{\p{##1}{##2}}} +\def\r ##1 ##2 ##3 ##4 {\pgfpathrectangle{\p{##1}{##2}}{\p{##3}{##4}}} +\def\c ##1 ##2 ##3 ##4 ##5 ##6 {% +\pgfpathcurveto{\p{##1}{##2}}{\p{##3}{##4}}{\p{##5}{##6}}}% +\@@input am#1.pgf +%\@nameuse{pgf@@am@#1}% +\endgroup}% +\makeatother +\endinput \ No newline at end of file diff --git a/Master/texmf-dist/tex/latex/pgfornament/pgflibrarypgfhan.code.tex b/Master/texmf-dist/tex/latex/pgfornament/pgflibrarypgfhan.code.tex new file mode 100644 index 00000000000..45e05ffee2a --- /dev/null +++ b/Master/texmf-dist/tex/latex/pgfornament/pgflibrarypgfhan.code.tex @@ -0,0 +1,110 @@ +% pgflibraryhan.code.tex (utf8 encoding) +% Copyright 2020 LIM LianTze,ZHANG Chennan and Alain Matthes +% Based on the original file pgflibraryhan.code.tex v0.33 2019/08/10 +% pgflibraryhan.code.tex v0.33 2019/08/10 +% Authors: pgf and LaTeX code by LIM LianTze +% based on CAD drawing by ZHANG Chennan +%---------%---------%---------%---------%---------%---------%---------%--------- +% This work 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.3 or later is part of all distributions of LaTeX +% version 2005/12/01 or later. +% +% This work has the LPPL maintenance status “maintained”. +% +% The Current Maintainer of this work is Alain Matthes. +%---------%---------%---------%---------%---------%---------%---------%--------- +% Original idea of F Fradin and H Voss +\typeout{2020/04/03 1.0 pgflibraryhan.code.tex} +%---------%---------%---------%---------%---------%---------%---------%--------- +% modification am \@pgfornamentDim#1 instead of pgfornamenthanDim#1 +%---------%---------%---------%---------%---------%---------%---------%--------- +\makeatletter +\def\@pgfornamentDim#1{% dim in bp +\ifcase#1\relax% +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 1 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 2 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 3 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 4 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 5 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 6 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 7 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 8 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 9 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 10 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 11 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 12 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 13 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 14 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 15 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 16 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 17 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 18 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 19 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 20 +\or\def\@pgfornamentX{260}\def\@pgfornamentY{260}% 21 +\or\def\@pgfornamentX{260}\def\@pgfornamentY{260}% 22 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 23 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 24 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 25 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 26 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 27 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 28 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{10}% 29 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{10}% 30 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{40}% 31 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{40}% 32 +\or\def\@pgfornamentX{75}\def\@pgfornamentY{60}% 33 +\or\def\@pgfornamentX{75}\def\@pgfornamentY{60}% 34 +\or\def\@pgfornamentX{100}\def\@pgfornamentY{60}% 35 +\or\def\@pgfornamentX{100}\def\@pgfornamentY{60}% 36 +\or\def\@pgfornamentX{125}\def\@pgfornamentY{110}% 37 +\or\def\@pgfornamentX{125}\def\@pgfornamentY{110}% 38 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{110}% 39 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{110}% 40 +\or\def\@pgfornamentX{115}\def\@pgfornamentY{60}% 41 +\or\def\@pgfornamentX{115}\def\@pgfornamentY{60}% 42 +\or\def\@pgfornamentX{140}\def\@pgfornamentY{60}% 43 +\or\def\@pgfornamentX{140}\def\@pgfornamentY{60}% 44 +\or\def\@pgfornamentX{130}\def\@pgfornamentY{60}% 45 +\or\def\@pgfornamentX{130}\def\@pgfornamentY{60}% 46 +\or\def\@pgfornamentX{155}\def\@pgfornamentY{60}% 47 +\or\def\@pgfornamentX{155}\def\@pgfornamentY{60}% 48 +\or\def\@pgfornamentX{360}\def\@pgfornamentY{360}% 49 +\or\def\@pgfornamentX{360}\def\@pgfornamentY{360}% 50 +\or\def\@pgfornamentX{360}\def\@pgfornamentY{360}% 51 +\or\def\@pgfornamentX{360}\def\@pgfornamentY{360}% 52 +\or\def\@pgfornamentX{360}\def\@pgfornamentY{360}% 53 +\or\def\@pgfornamentX{360}\def\@pgfornamentY{360}% 54 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 55 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 56 +\or\def\@pgfornamentX{200}\def\@pgfornamentY{200}% 57 +\or\def\@pgfornamentX{810}\def\@pgfornamentY{270}% 58 +\or\def\@pgfornamentX{810}\def\@pgfornamentY{270}% 59 +\or\def\@pgfornamentX{450}\def\@pgfornamentY{120}% 60 +\or\def\@pgfornamentX{450}\def\@pgfornamentY{120}% 61 +\or\def\@pgfornamentX{400}\def\@pgfornamentY{180}% 62 +\or\def\@pgfornamentX{400}\def\@pgfornamentY{180}% 63 +\or\def\@pgfornamentX{350}\def\@pgfornamentY{210}% 64 +\or\def\@pgfornamentX{350}\def\@pgfornamentY{210}% 65 +\or\def\@pgfornamentX{400}\def\@pgfornamentY{180}% 66 +\or\def\@pgfornamentX{400}\def\@pgfornamentY{180}% 67 +\or\def\@pgfornamentX{400}\def\@pgfornamentY{170}% 68 +\or\def\@pgfornamentX{400}\def\@pgfornamentY{170}% 69 +\or\def\@pgfornamentX{400}\def\@pgfornamentY{140}% 70 +\or\def\@pgfornamentX{400}\def\@pgfornamentY{140}% 71 +\or\def\@pgfornamentX{300}\def\@pgfornamentY{300}% 72 +\or\def\@pgfornamentX{300}\def\@pgfornamentY{300}% 73 +\or\def\@pgfornamentX{300}\def\@pgfornamentY{300}% 74 +\or\def\@pgfornamentX{300}\def\@pgfornamentY{300}% 75 +\or\def\@pgfornamentX{120}\def\@pgfornamentY{122.5}% 76 +\or\def\@pgfornamentX{120}\def\@pgfornamentY{122.5}% 77 +\or\def\@pgfornamentX{123}\def\@pgfornamentY{69}% 78 +\fi% +}% +\makeatother +\endinput + diff --git a/Master/texmf-dist/tex/latex/pgfornament/pgflibraryvectorian.code.tex b/Master/texmf-dist/tex/latex/pgfornament/pgflibraryvectorian.code.tex new file mode 100644 index 00000000000..3f7a138281f --- /dev/null +++ b/Master/texmf-dist/tex/latex/pgfornament/pgflibraryvectorian.code.tex @@ -0,0 +1,220 @@ +% pgflibraryvectorian.code.tex (utf8 encoding) +% Copyright 2020 Alain Matthes +% This work 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.3 or later is part of all distributions of LaTeX +% version 2005/12/01 or later. +% +% This work has the LPPL maintenance status “maintained”. +% +% The Current Maintainer of this work is Alain Matthes. +% Original idea of F Fradin and H Voss +\typeout{2020/04/06 1.1 pgflibraryvectorian.code.tex} +\makeatletter +% dimensions des motifs +\def\@pgfornamentDim#1{% dim en bp +\ifcase#1\relax% +\or\def\@pgfornamentX{136}\def\@pgfornamentY{107}% 1 +\or\def\@pgfornamentX{134}\def\@pgfornamentY{48}% 2 +\or\def\@pgfornamentX{130}\def\@pgfornamentY{65}% 3 +\or\def\@pgfornamentX{133}\def\@pgfornamentY{133}% 4 +\or\def\@pgfornamentX{129}\def\@pgfornamentY{146}% 5 +\or\def\@pgfornamentX{134}\def\@pgfornamentY{148}% 6 +\or\def\@pgfornamentX{136}\def\@pgfornamentY{135}% 7 +\or\def\@pgfornamentX{134}\def\@pgfornamentY{134}% 8 +\or\def\@pgfornamentX{79}\def\@pgfornamentY{105}% 9 +\or\def\@pgfornamentX{80}\def\@pgfornamentY{99}% 10 +\or\def\@pgfornamentX{123}\def\@pgfornamentY{67}% 11 +\or\def\@pgfornamentX{136}\def\@pgfornamentY{136}% 12 +\or\def\@pgfornamentX{136}\def\@pgfornamentY{236}% 13 +\or\def\@pgfornamentX{123}\def\@pgfornamentY{67}% 14 +\or\def\@pgfornamentX{103}\def\@pgfornamentY{52}% 15 +\or\def\@pgfornamentX{103}\def\@pgfornamentY{52}% 16 +\or\def\@pgfornamentX{74}\def\@pgfornamentY{59}% 17 +\or\def\@pgfornamentX{74}\def\@pgfornamentY{59}% 18 +\or\def\@pgfornamentX{81}\def\@pgfornamentY{81}% 19 +\or\def\@pgfornamentX{81}\def\@pgfornamentY{81}% 20 +\or\def\@pgfornamentX{70}\def\@pgfornamentY{58}% 21 +\or\def\@pgfornamentX{34}\def\@pgfornamentY{61}% 22 +\or\def\@pgfornamentX{68}\def\@pgfornamentY{55}% 23 +\or\def\@pgfornamentX{79}\def\@pgfornamentY{76}% 24 +\or\def\@pgfornamentX{80}\def\@pgfornamentY{88}% 25 +\or\def\@pgfornamentX{59}\def\@pgfornamentY{120}% 26 +\or\def\@pgfornamentX{101}\def\@pgfornamentY{98}% 27 +\or\def\@pgfornamentX{52}\def\@pgfornamentY{102}% 28 +\or\def\@pgfornamentX{65}\def\@pgfornamentY{65}% 29 +\or\def\@pgfornamentX{63}\def\@pgfornamentY{64}% 30 +\or\def\@pgfornamentX{48}\def\@pgfornamentY{48}% 31 +\or\def\@pgfornamentX{48}\def\@pgfornamentY{48}% 32 +\or\def\@pgfornamentX{85}\def\@pgfornamentY{85}% 33 +\or\def\@pgfornamentX{85}\def\@pgfornamentY{85}% 34 +\or\def\@pgfornamentX{97}\def\@pgfornamentY{97}% 35 +\or\def\@pgfornamentX{97}\def\@pgfornamentY{97}% 36 +\or\def\@pgfornamentX{105}\def\@pgfornamentY{104}% 37 +\or\def\@pgfornamentX{105}\def\@pgfornamentY{104}% 38 +\or\def\@pgfornamentX{112}\def\@pgfornamentY{112}% 39 +\or\def\@pgfornamentX{112}\def\@pgfornamentY{112}% 40 +\or\def\@pgfornamentX{111}\def\@pgfornamentY{113}% 41 +\or\def\@pgfornamentX{111}\def\@pgfornamentY{113}% 42 +\or\def\@pgfornamentX{123}\def\@pgfornamentY{63}% 43 +\or\def\@pgfornamentX{123}\def\@pgfornamentY{63}% 44 +\or\def\@pgfornamentX{385}\def\@pgfornamentY{64}% 45 +\or\def\@pgfornamentX{453}\def\@pgfornamentY{97}% 46 +\or\def\@pgfornamentX{114}\def\@pgfornamentY{32}% 47 +\or\def\@pgfornamentX{114}\def\@pgfornamentY{32}% 48 +\or\def\@pgfornamentX{163}\def\@pgfornamentY{61}% 49 +\or\def\@pgfornamentX{164}\def\@pgfornamentY{125}% 50 +\or\def\@pgfornamentX{164}\def\@pgfornamentY{125}% 51 +\or\def\@pgfornamentX{248}\def\@pgfornamentY{197}% 52 +\or\def\@pgfornamentX{134}\def\@pgfornamentY{134}% 53 +\or\def\@pgfornamentX{134}\def\@pgfornamentY{134}% 54 +\or\def\@pgfornamentX{269}\def\@pgfornamentY{116}% 55 +\or\def\@pgfornamentX{269}\def\@pgfornamentY{116}% 56 +\or\def\@pgfornamentX{207}\def\@pgfornamentY{103}% 57 +\or\def\@pgfornamentX{228}\def\@pgfornamentY{116}% 58 +\or\def\@pgfornamentX{204}\def\@pgfornamentY{102}% 59 +\or\def\@pgfornamentX{451}\def\@pgfornamentY{189}% 60 +\or\def\@pgfornamentX{205}\def\@pgfornamentY{205}% 61 +\or\def\@pgfornamentX{205}\def\@pgfornamentY{205}% 62 +\or\def\@pgfornamentX{212}\def\@pgfornamentY{212}% 63 +\or\def\@pgfornamentX{212}\def\@pgfornamentY{212}% 64 +\or\def\@pgfornamentX{132}\def\@pgfornamentY{166}% 65 +\or\def\@pgfornamentX{177}\def\@pgfornamentY{175}% 66 +\or\def\@pgfornamentX{80}\def\@pgfornamentY{155}% 67 +\or\def\@pgfornamentX{361}\def\@pgfornamentY{154}% 68 +\or\def\@pgfornamentX{448}\def\@pgfornamentY{227}% 69 +\or\def\@pgfornamentX{226}\def\@pgfornamentY{79}% 70 +\or\def\@pgfornamentX{443}\def\@pgfornamentY{81}% 71 +\or\def\@pgfornamentX{216}\def\@pgfornamentY{58}% 72 +\or\def\@pgfornamentX{216}\def\@pgfornamentY{58}% 73 +\or\def\@pgfornamentX{308}\def\@pgfornamentY{93}% 74 +\or\def\@pgfornamentX{373}\def\@pgfornamentY{120}% 75 +\or\def\@pgfornamentX{308}\def\@pgfornamentY{93}% 76 +\or\def\@pgfornamentX{207}\def\@pgfornamentY{89}% 77 +\or\def\@pgfornamentX{207}\def\@pgfornamentY{132}% 78 +\or\def\@pgfornamentX{249}\def\@pgfornamentY{122}% 79 +\or\def\@pgfornamentX{454}\def\@pgfornamentY{31}% 80 +\or\def\@pgfornamentX{176}\def\@pgfornamentY{45}% 81 +\or\def\@pgfornamentX{454}\def\@pgfornamentY{24}% 82 +\or\def\@pgfornamentX{449}\def\@pgfornamentY{20}% 83 +\or\def\@pgfornamentX{290}\def\@pgfornamentY{57}% 84 +\or\def\@pgfornamentX{453}\def\@pgfornamentY{22}% 85 +\or\def\@pgfornamentX{454}\def\@pgfornamentY{17}% 86 +\or\def\@pgfornamentX{360}\def\@pgfornamentY{44}% 87 +\or\def\@pgfornamentX{454}\def\@pgfornamentY{15}% 88 +\or\def\@pgfornamentX{454}\def\@pgfornamentY{10}% 89 +\or\def\@pgfornamentX{30}\def\@pgfornamentY{30}% 90 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{29}% 91 +\or\def\@pgfornamentX{43}\def\@pgfornamentY{29}% 92 +\or\def\@pgfornamentX{59}\def\@pgfornamentY{29}% 93 +\or\def\@pgfornamentX{59}\def\@pgfornamentY{29}% 94 +\or\def\@pgfornamentX{43}\def\@pgfornamentY{29}% 95 +\or\def\@pgfornamentX{30}\def\@pgfornamentY{15}% 96 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{14}% 97 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{14}% 98 +\or\def\@pgfornamentX{45}\def\@pgfornamentY{15}% 99 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{30}% 100 +\or\def\@pgfornamentX{132}\def\@pgfornamentY{30}% 101 +\or\def\@pgfornamentX{43}\def\@pgfornamentY{29}%102 +\or\def\@pgfornamentX{42}\def\@pgfornamentY{30}%103 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{29}%104 +\or\def\@pgfornamentX{45}\def\@pgfornamentY{30}%105 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{30}%106 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{29}%107 +\or\def\@pgfornamentX{59}\def\@pgfornamentY{29}%108 +\or\def\@pgfornamentX{72}\def\@pgfornamentY{29}%109 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{15}%110 +\or\def\@pgfornamentX{43}\def\@pgfornamentY{28}%111 +\or\def\@pgfornamentX{15}\def\@pgfornamentY{59}%112 +\or\def\@pgfornamentX{57}\def\@pgfornamentY{28}%113 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{29}%114 +\or\def\@pgfornamentX{43}\def\@pgfornamentY{29}%115 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{29}%116 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{29}%117 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{29}%118 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{29}%119 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{44}%120 +\or\def\@pgfornamentX{30}\def\@pgfornamentY{44}%121 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{29}%122 +\or\def\@pgfornamentX{59}\def\@pgfornamentY{29}%123 +\or\def\@pgfornamentX{58}\def\@pgfornamentY{59}%124 +\or\def\@pgfornamentX{30}\def\@pgfornamentY{44}%125 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{43}%126 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{28}%127 +\or\def\@pgfornamentX{45}\def\@pgfornamentY{29}%128 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{29}%129 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{29}%130 +\or\def\@pgfornamentX{45}\def\@pgfornamentY{44}%131 +\or\def\@pgfornamentX{45}\def\@pgfornamentY{44}%132 +\or\def\@pgfornamentX{15}\def\@pgfornamentY{15}%133 +\or\def\@pgfornamentX{15}\def\@pgfornamentY{15}%134 +\or\def\@pgfornamentX{15}\def\@pgfornamentY{14}%135 +\or\def\@pgfornamentX{72}\def\@pgfornamentY{44}%136 +\or\def\@pgfornamentX{149}\def\@pgfornamentY{74}%137 +\or\def\@pgfornamentX{15}\def\@pgfornamentY{7}%138 +\or\def\@pgfornamentX{73}\def\@pgfornamentY{37}%139 +\or\def\@pgfornamentX{15}\def\@pgfornamentY{15}%140 +\or\def\@pgfornamentX{15}\def\@pgfornamentY{15}%141 +\or\def\@pgfornamentX{30}\def\@pgfornamentY{30}%142 +\or\def\@pgfornamentX{30}\def\@pgfornamentY{30}%143 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{30}%144 +\or\def\@pgfornamentX{15}\def\@pgfornamentY{15}%145 +\or\def\@pgfornamentX{15}\def\@pgfornamentY{15}%146 +\or\def\@pgfornamentX{31}\def\@pgfornamentY{29}%147 +\or\def\@pgfornamentX{30}\def\@pgfornamentY{44}%148 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{28}%149 +\or\def\@pgfornamentX{30}\def\@pgfornamentY{44}%150 +\or\def\@pgfornamentX{43}\def\@pgfornamentY{29}%151 +\or\def\@pgfornamentX{57}\def\@pgfornamentY{28}%152 +\or\def\@pgfornamentX{57}\def\@pgfornamentY{28}%153 +\or\def\@pgfornamentX{34}\def\@pgfornamentY{17}%154 +\or\def\@pgfornamentX{34}\def\@pgfornamentY{17}%155 +\or\def\@pgfornamentX{45}\def\@pgfornamentY{28}%156 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{29}%157 +\or\def\@pgfornamentX{58}\def\@pgfornamentY{29}%158 +\or\def\@pgfornamentX{43}\def\@pgfornamentY{29}%159 +\or\def\@pgfornamentX{43}\def\@pgfornamentY{30}%160 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{29}%161 +\or\def\@pgfornamentX{30}\def\@pgfornamentY{44}%162 +\or\def\@pgfornamentX{46}\def\@pgfornamentY{29}%163 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{44}%164 +\or\def\@pgfornamentX{45}\def\@pgfornamentY{26}%165 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{29}%166 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{29}%167 +\or\def\@pgfornamentX{59}\def\@pgfornamentY{30}%168 +\or\def\@pgfornamentX{58}\def\@pgfornamentY{29}%169 +\or\def\@pgfornamentX{59}\def\@pgfornamentY{30}%170 +\or\def\@pgfornamentX{30}\def\@pgfornamentY{29}%171 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{15}%172 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{44}%173 +\or\def\@pgfornamentX{28}\def\@pgfornamentY{44}%174 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{42}%175 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{43}%176 +\or\def\@pgfornamentX{31}\def\@pgfornamentY{44}%177 +\or\def\@pgfornamentX{28}\def\@pgfornamentY{44}%178 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{44}%179 +\or\def\@pgfornamentX{30}\def\@pgfornamentY{45}%180 +\or\def\@pgfornamentX{43}\def\@pgfornamentY{30}%181 +\or\def\@pgfornamentX{45}\def\@pgfornamentY{29}%182 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{27}%183 +\or\def\@pgfornamentX{42}\def\@pgfornamentY{29}%184 +\or\def\@pgfornamentX{45}\def\@pgfornamentY{29}%185 +\or\def\@pgfornamentX{43}\def\@pgfornamentY{14}%186 +\or\def\@pgfornamentX{28}\def\@pgfornamentY{29}%187 +\or\def\@pgfornamentX{30}\def\@pgfornamentY{30}%188 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{29}%189 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{29}%190 +\or\def\@pgfornamentX{73}\def\@pgfornamentY{58}%191 +\or\def\@pgfornamentX{29}\def\@pgfornamentY{44}%192 +\or\def\@pgfornamentX{44}\def\@pgfornamentY{14}%193 +\or\def\@pgfornamentX{90}\def\@pgfornamentY{90}%194 +\or\def\@pgfornamentX{90}\def\@pgfornamentY{90}%195 +\or\def\@pgfornamentX{148}\def\@pgfornamentY{30}%196 + +\fi% +}% +\makeatother +\endinput \ No newline at end of file diff --git a/Master/texmf-dist/tex/latex/pgfornament/pgfornament.sty b/Master/texmf-dist/tex/latex/pgfornament/pgfornament.sty new file mode 100644 index 00000000000..ec023d43061 --- /dev/null +++ b/Master/texmf-dist/tex/latex/pgfornament/pgfornament.sty @@ -0,0 +1,229 @@ +% pgfornament.sty (utf8 encoding) +% Copyright 2020 Alain Matthes +% This work 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.3 or later is part of all distributions of LaTeX +% version 2005/12/01 or later. +% +% This work has the LPPL maintenance status “maintained”. +% +% The Current Maintainer of this work is Alain Matthes. +%---------%---------%---------%---------%---------%---------%---------%--------- +% First version created by Alain Matthes le 2012-02-22. +%---------%---------%---------%---------%---------%---------%---------%--------- +% Inspired from psvectorian P Fradin H Voss +\NeedsTeXFormat{LaTeX2e} +\RequirePackage{tikz,pgfopts} +\ProvidesPackage{pgfornament}[2020/04/06 v1.1 vector ornaments] +\gdef\pgfOrnamentsObject{pgflibraryvectorian.code.tex} +\gdef\OrnamentsFamily{vectorian} +\pgfkeys{% + /pgfOrnaments/object/.cd, + /pgfOrnaments/object/.code = \gdef\pgfOrnamentsObject{pgflibrary#1.code.tex} + \gdef\OrnamentsFamily{#1}% +} +\ProcessPgfOptions{/pgfOrnaments} +\input{\pgfOrnamentsObject}% +%---------%---------%---------%---------%---------%---------%---------%-------- +% tools +%---------%---------%---------%---------%---------%---------%---------%-------- +\makeatletter +\newenvironment{newfamily}[1][vectorian]{% + \global\let\SavedOrnamentsFamily\OrnamentsFamily + \newpgfornamentfamily{#1} + }{\newpgfornamentfamily{\SavedOrnamentsFamily}}% + +\def\pgf@@ornament#1{% +\begingroup +\def\ubb{\pgfusepath{use as bounding box}} +\def\i{\pgfusepath{clip}}% +\def\k{\pgfusepath{stroke}}% +\let\o\pgfpathclose +\let\s\pgfusepathqfillstroke +\def\p ##1##2{\pgfqpoint{##1bp}{##2bp}}% +\def\m ##1 ##2 {\pgfpathmoveto{\p{##1}{##2}}}% +\def\l ##1 ##2 {\pgfpathlineto{\p{##1}{##2}}}% +\def\r ##1 ##2 ##3 ##4 {\pgfpathrectangle{\p{##1}{##2}}{\p{##3}{##4}}}% +\def\c ##1 ##2 ##3 ##4 ##5 ##6 {% +\pgfpathcurveto{\p{##1}{##2}}{\p{##3}{##4}}{\p{##5}{##6}}}% +\@@input \OrnamentsFamily#1.pgf% +\endgroup}% + +\newcommand{\callornament}[1]{% +\begingroup +\def\ubb{\pgfusepath{use as bounding box}} +\def\i{\pgfusepath{clip}}% +\let\o\pgfpathclose +\let\s\pgfusepathqfillstroke +\def\p ##1##2{\pgfqpoint{##1bp}{##2bp}}% +\def\m ##1 ##2 {\pgfpathmoveto{\p{##1}{##2}}}% +\def\l ##1 ##2 {\pgfpathlineto{\p{##1}{##2}}}% +\def\r ##1 ##2 ##3 ##4 {\pgfpathrectangle{\p{##1}{##2}}{% + \p{##3}{##4}}}% +\def\c ##1 ##2 ##3 ##4 ##5 ##6 {% +\pgfpathcurveto{\p{##1}{##2}}{\p{##3}{##4}}{\p{##5}{##6}}}% +\@@input #1\relax +\endgroup} +%---------%---------%---------%---------%---------%---------%---------%--------- +% Les options de \pgfornament sont: +% +% scale : nombre (échelle, 1 par défaut) +% width : nombre + unité (largeur, naturelle par défaut) +% height : nombre + unité (hauteur, naturelle par défaut) +% color : couleur ( par défaut couleur courante ) +% symmetry=h : true/false (symétrie horizontale, false par défaut) +% symmetry=v : true/false (symétrie verticale, false par défaut) +% symmetry=c : true/false (symétrie centrale h+v,false par défaut) +%---------%---------%---------%---------%---------%---------%---------%-------- +\tikzset{pgfornamentstyle/.style={}}% +\pgfkeys{% + /ornament/.cd, + scale/.code = {\def\pgfornamentscale{#1}}, + width/.code = {\def\pgfornamentwidth{#1}}, + height/.code = {\def\pgfornamentheight{#1}}, + color/.code = {\def\pgfornamentcolor{#1}}, + opacity/.code = {\def\pgfornamentopacity{#1}}, + anchor/.code = {\def\pgfornamentanchor{#1}}, + ydelta/.code = {\def\pgfornamentydelta{#1}}, + symmetry/.is choice, + symmetry/v/.code = {\tikzset{pgfornamentstyle/.append + style={cm={-1,0,0,1,(0,0)}}}}, + symmetry/c/.code = {\tikzset{pgfornamentstyle/.append + style={cm={-1,0,0,-1,(0,0)}}}}, + symmetry/h/.code = {\tikzset{pgfornamentstyle/.append + style={cm={1,0,0,-1,(0,0)}}}}, + symmetry/none/.code = {\tikzset{pgfornamentstyle/.append style={cm={1,0,0,1,(0,0)}}}}% +}% +%---------%---------%---------%---------%---------%---------%---------%--------- +\def\pgfornament{\pgfutil@ifnextchar[{\pgf@ornament}{\pgf@ornament[]}}% +\def\pgf@ornament[#1]#2{% +\pgfkeys{% + /ornament/.cd, + scale = 1, + opacity = {}, + width = {}, + height = {}, + color = {}, + ydelta = 0 pt, + symmetry = none , + anchor = center + }% +\pgfqkeys{/ornament}{#1}% +\ifx\pgfornamentcolor\empty + \tikzset{pgfornamentstyle/.append style={}}% +\else + \tikzset{pgfornamentstyle/.append style={color=\pgfornamentcolor}}% +\fi +\ifx\pgfornamentopacity\empty + \tikzset{pgfornamentstyle/.append style={}}% +\else + \tikzset{pgfornamentstyle/.append style={opacity=\pgfornamentopacity}}% +\fi +\ifx\pgfornamentwidth\empty + \else + \@pgfornamentDim{#2} + \pgfmathsetmacro{\pgfornamentscale}{\pgfornamentwidth/\@pgfornamentX bp}% +\fi +\ifx\pgfornamentheight\empty + \else + \@pgfornamentDim{#2} + \pgfmathsetmacro{\pgfornamentscale}{\pgfornamentheight/\@pgfornamentY bp}% +\fi +\begin{tikzpicture}[% +baseline={([yshift=\pgfornamentydelta]current bounding box.\pgfornamentanchor)}, + pgfornamentstyle] + \pgftransformscale{\pgfornamentscale}% + \pgf@@ornament{#2}% +\end{tikzpicture}% +\tikzset{pgfornamentstyle/.style={cm={1,0,0,1,(0,0)}}} +}% end pgfornament + +\gdef\ornamenttopos{.5} +\gdef\ornamenttoanchor{center} +\gdef\ornamenttosymmetry{none} +\tikzset{options default/.style={anchor=center, + sloped, + allow upside down, + inner sep=0pt}} +\tikzset{ornament/at/.code={\def\ornamenttopos{#1}}, + options/.style={options default,#1}, + ornament symmetry/.code={\def\ornamenttosymmetry{#1}}, + node anchor/.code={\def\ornamenttoanchor{#1}}, + ornament/.style={% + to path={% +\pgfextra{% + \tikz@scan@one@point\pgfutil@firstofone(\tikztostart)\relax + \pgf@xa=\pgf@x + \pgf@ya=\pgf@y + \tikz@scan@one@point\pgfutil@firstofone(\tikztotarget)\relax + \pgf@xb=\pgf@x + \pgf@yb=\pgf@y + \advance\pgf@xa by-\pgf@xb + \advance\pgf@ya by-\pgf@yb + \pgfmathveclen{\pgf@xa}{\pgf@ya}% + \global\let\ornamentlen\pgfmathresult} + -- node [pos=\ornamenttopos,options, + anchor=\ornamenttoanchor]{% + \pgfornament[width = \ornamentlen, + symmetry=\ornamenttosymmetry]{#1}} + (\tikztotarget)\tikztonodes %end pgfextra + }% end to path + }% end style +}% end \tikzset + +\def\pgfornamenthline#1#2#3#4{% + \pgfextractx{\pgf@x}{\pgfpointanchor{#1}{#3 east}} + \pgf@xa=\pgf@x + \pgfextractx{\pgf@x}{\pgfpointanchor{#2}{#3 west}} + \pgf@xb=\pgf@x + \advance\pgf@xb by -\pgf@xa +\node[inner sep=0pt] at ($(#1.#3 east)!.5!(#2.#3 west)$) {\pgfornament[width=\pgf@xb]{#4}} ; +} +\def\pgfornamentvline#1#2#3#4{% + \pgfextracty{\pgf@y}{\pgfpointanchor{#1}{south #3}} + \pgf@ya=\pgf@y + \pgfextracty{\pgf@y}{\pgfpointanchor{#2}{north #3}} + \pgf@yb=\pgf@y + \advance\pgf@yb by -\pgf@ya +\node[inner sep=0pt,rotate=90] at ($(#1.south #3)!.5!(#2.north #3)$) {\pgfornament[width=\pgf@yb]{#4}} ; +}% +\def\getornamentlength#1#2#3#4{% + \pgfpointdiff{\pgfpointanchor{#1}{#2}}% + {\pgfpointanchor{#3}{#4}}% + \pgf@xa=\pgf@x + \pgf@ya=\pgf@y + \pgfmathveclen{\pgf@xa}{\pgf@ya}% + \global\let\ornamentlen\pgfmathresult +}% +\def\getornamentangle#1#2#3{% + \pgfpointdiff{\pgfpointanchor{#2}{center}}{\pgfpointanchor{#3}{center}}% + \pgfmathsetmacro{#1}{atan2(\pgf@x,\pgf@y)}% +}% +\makeatother +\newcommand{\resetpgfornamentstyle}{\tikzset{pgfornamentstyle/.style={}}} + +% 2020 Changing vector objects +\def\newpgfornamentfamily#1{% + \edef\OrnamentsFamily{#1} + \gdef\pgfOrnamentsObject{pgflibrary\OrnamentsFamily.code.tex} + \input{\pgfOrnamentsObject}% + }% + +\makeatletter +\pgfkeys{/ornamentline/.cd, + color/.store in = \ornamentcolor, + color = black, + /ornamentline/.search also={/tikz}} +\def\pgfornamentline{\pgfutil@ifnextchar[{\pgf@ornamentline}{\pgf@ornamentline[]}}% +\def\pgf@ornamentline[#1]#2#3#4#5{% + +\pgfqkeys{/ornamentline}{#1}% +\pgfmathsetmacro\nbo{#4} +\path (#2) -- (#3) foreach \i in {0,...,\nbo} {coordinate[pos=\i/\nbo] (p\i)} + [color=\ornamentcolor] foreach \i [count=\j] in {0,...,\number\numexpr\nbo-1} { (p\i) to [ornament=#5] (p\j)}; +} +\makeatother +\endinput \ No newline at end of file diff --git a/Master/texmf-dist/tex/latex/pgfornament/tikzrput.sty b/Master/texmf-dist/tex/latex/pgfornament/tikzrput.sty new file mode 100644 index 00000000000..b3cb0165a28 --- /dev/null +++ b/Master/texmf-dist/tex/latex/pgfornament/tikzrput.sty @@ -0,0 +1,113 @@ +% pgflibraryam.code.tex (utf8 encoding) +% Copyright 2020 Alain Matthes +% This work 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.3 or later is part of all distributions of LaTeX +% version 2005/12/01 or later. +% +% This work has the LPPL maintenance status “maintained”. +% +% The Current Maintainer of this work is Alain Matthes. + +\typeout{2020/04/06 1.1 pgflibraryam.code.tex} +\NeedsTeXFormat{LaTeX2e}% +\RequirePackage{tikz,iftex}% +\ProvidesPackage{tikzrput}[2020/04/04 v1.1 rput for tikz]% +\edef\tikzrputPtVirCode{\the\catcode`\;} +\edef\tikzrputAtCode{\the\catcode`\@} +\edef\tikzrputTwoPtCode{\the\catcode`\:} +\catcode`\;=12\relax +\catcode`\:=12\relax +\catcode`\@=11\relax + +\newif\ifrput@polar\rput@polarfalse +\def\rput@empty{} + +\def\rput@parsecoordinate#1{% +\rput@getseparator#1,\@nil +\ifrput@polar + \rput@getfrompolar#1\@nil +\fi +}% +\def\rput@getseparator#1,#2\@nil{% +\ifx\rput@empty#2\rput@empty% + \rput@polartrue +\else + \rput@polarfalse +\fi +}% +\def\rput@getfrompolar#1;#2\@nil{% + \def\pos@rput{#1:#2}% +}% + +\def\rput@pos@ {\def\rput@anchor{center}} +\def\rput@pos@B {\def\rput@anchor{base}} +\def\rput@pos@Br {\def\rput@anchor{base east}} +\def\rput@pos@Bl {\def\rput@anchor{base west}} +\def\rput@pos@tr {\def\rput@anchor{north east}} +\def\rput@pos@tl {\def\rput@anchor{north west}} +\def\rput@pos@br {\def\rput@anchor{south east}} +\def\rput@pos@bl {\def\rput@anchor{south west}} +\def\rput@pos@t {\def\rput@anchor{north}} +\def\rput@pos@b {\def\rput@anchor{south}} +\def\rput@pos@r {\def\rput@anchor{east}} +\def\rput@pos@l {\def\rput@anchor{west}} +\let\rput@pos@mc\rput@pos@ +\let\rput@pos@rB\rput@pos@Br +\let\rput@pos@lB\rput@pos@Bl +\let\rput@pos@rt\rput@pos@tr +\let\rput@pos@lt\rput@pos@tl +\let\rput@pos@rb\rput@pos@br +\let\rput@pos@lb\rput@pos@bl +\newbox\mybox +\ifpdf% Pablo 04/2020 +\pgfutil@ifundefined{rput}{% + \tikzset{rput style/.style={}} + \def\rput{\pgfutil@ifnextchar[{\rput@i}{% + \global\edef\opt@rput{}\rput@ii}}% + \def\rput@i[#1]{\global\edef\opt@rput{#1}\rput@ii}% + \def\rput@ii{\pgfutil@ifnextchar({% + \def\angle@rput{0}\rput@iv}{\rput@iii}}% + \def\rput@iii#1{% + \ifx\rput@empty#1\rput@empty\def\angle@rput{0}\else% + \def\angle@rput{#1}\fi% + \pgfutil@ifnextchar({\rput@iv}{\rput@iv(0,0)}}%, + \def\rput@iv(#1){\def\pos@rput{#1}% + \rput@parsecoordinate{#1}% + \rput@v}% + \def\rput@v#1{% + \sbox\mybox{% + \pgfinterruptpicture#1\endpgfinterruptpicture}% + \begingroup + \tikzifinpicture{% + \let\begin@my@tikz@env\scope + \let\end@my@tikz@env\endscope + }{% + \let\begin@my@tikz@env\tikzpicture + \let\end@my@tikz@env\endtikzpicture + }% + \@nameuse{rput@pos@\opt@rput}% + \begin{pgfinterruptboundingbox}% + \begin@my@tikz@env[overlay] + \path (0,0)--(\pos@rput); + \protected@edef\rput@temp{% + \noexpand\node[inner sep = 0pt, + anchor = \rput@anchor, + rotate = \angle@rput, + rput style]}% + \rput@temp at (\pos@rput){\box\mybox}; + \end@my@tikz@env + \end{pgfinterruptboundingbox}% + \endgroup + \ignorespaces + }% + }{% + }% +\fi +\catcode`\;=\tikzrputPtVirCode\relax +\catcode`\@=\tikzrputAtCode\relax +\catcode`\:=\tikzrputTwoPtCode\relax +\endinput -- cgit v1.2.3