diff options
Diffstat (limited to 'Master/texmf-dist/doc/generic/pgf/pgfmanual-en-library-svg-path.tex')
-rw-r--r-- | Master/texmf-dist/doc/generic/pgf/pgfmanual-en-library-svg-path.tex | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/generic/pgf/pgfmanual-en-library-svg-path.tex b/Master/texmf-dist/doc/generic/pgf/pgfmanual-en-library-svg-path.tex new file mode 100644 index 00000000000..ec45ca44356 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/pgfmanual-en-library-svg-path.tex @@ -0,0 +1,58 @@ +% Copyright 2019 by Till Tantau +% +% This file may be distributed and/or modified +% +% 1. under the LaTeX Project Public License and/or +% 2. under the GNU Free Documentation License. +% +% See the file doc/generic/pgf/licenses/LICENSE for more details. + + +\section{SVG-Path Library} +\label{section-library-svg-path} + +\begin{pgflibrary}{svg.path} + This library defines a command that allows you to specify a path using the + \textsc{svg}-syntax. +\end{pgflibrary} + +\begin{command}{\pgfpathsvg\marg{path}} + This command extends the current path by a \meta{path} given in the + \textsc{svg}-path-data syntax. This syntax is described in detail in + Section~8.3 of the \textsc{svg}-specification, Version~1.1. + + In principle, the complete syntax is supported and the library just + provides a parser and a mapping to basic layer commands. For instance, + |M 0 10| is mapped to |\pgfpathmoveto{\pgfpoint{0pt}{10pt}}|. There are, + however, a few things to be aware of: + % + \begin{itemize} + \item The computation underlying the arc commands |A| and |a| are not + numerically stable, which may result in quite imprecise arcs. + Bézier curves, both quadratic and cubic, are not affected, neither + are arcs spanning degrees that are multiples of $90^{\circ}$. + \item The dimensionless units of \textsc{svg} are always interpreted as + points (|pt|). This is a problem with paths like |M 20000 0|, which + will raise an error message since \TeX\ cannot handle dimensions + larger than about 16\,000 points. + \item All coordinate and canvas transformations apply to the path in + the usual fashion. + \item The |\pgfpathsvg| command can be freely intermixed with other + path commands. + \end{itemize} + % +\begin{codeexample}[preamble={\usepgflibrary{svg.path}}] +\begin{pgfpicture} + \pgfpathsvg{M 0 0 l 20 0 0 20 -20 0 q 10 0 10 10 + t 10 10 10 10 h -50 z} + \pgfusepath{stroke} +\end{pgfpicture} +\end{codeexample} + % +\end{command} + + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "pgfmanual-pdftex-version" +%%% End: |