From 5975d8c977cc3272d11169c088e93e55efbc5940 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Tue, 28 Mar 2017 20:37:19 +0000 Subject: svg (28mar17) git-svn-id: svn://tug.org/texlive/trunk@43629 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/source/latex/svg/svg.dtx | 248 +++++++++++++++-------------- 1 file changed, 126 insertions(+), 122 deletions(-) (limited to 'Master/texmf-dist/source') diff --git a/Master/texmf-dist/source/latex/svg/svg.dtx b/Master/texmf-dist/source/latex/svg/svg.dtx index 8b3aa643cca..419614228b2 100644 --- a/Master/texmf-dist/source/latex/svg/svg.dtx +++ b/Master/texmf-dist/source/latex/svg/svg.dtx @@ -1,9 +1,7 @@ -% \CheckSum{3474} +% \CheckSum{3456} % \iffalse meta-comment % -% svg -- Include SVG pictures in LaTeX documents using Inkscape -% ---------------------------------------------------------------------------- -% svg-extract -- Extract independent graphic files from SVG pictures +% svg and svg-extract -- Include and extract SVG pictures in LaTeX documents % ---------------------------------------------------------------------------- % % Copyright (C) Philip Ilten , 2012-2016 @@ -117,7 +115,7 @@ svg-extract -- Extract independent graphic files from SVG pictures %\ProvidesPackage{svg}[% %\ProvidesPackage{svg-extract}[% %<*driver|package&option> - 2017/03/27 v2.00\space% + 2017/03/28 v2.00a\space% % (include SVG pictures)% % (extract independent graphics from SVG pictures)% ] @@ -212,7 +210,7 @@ svg-extract -- Extract independent graphic files from SVG pictures In addition, the package \pkg{svg-extract} allows the extraction of these graphics into independent files in different graphic formats, exactly as it is rendered within the document. For the creation of these graphics in the - well\hbox{-}known formats PDF, EPS and~PS, \LaTeX and possibly conversion + well\hbox{-}known formats PDF, EPS and~PS, \LaTeX{} and possibly conversion tools shipped with the distribution are used. If the graphics are required in other file formats, either \app{ImageMagick} or \app{Ghostscript} can be invoked. @@ -223,16 +221,16 @@ svg-extract -- Extract independent graphic files from SVG pictures % % \fi % -% \changes{v1.0}{2004/11/05}{initial version by Philip Ilten} -% \changes{v2.00}{2016/09/23}{new maintainer: Falk Hanisch} -% \changes{v2.00}{2017/03/27}{re-implementation from scratch} -% \changes{v2.00}{2017/03/27}{package \pkg{subfig} not required anymore} +% \changes{v1.0}{2004/11/05}{initial version by Philip Ilten}^^A +% \changes{v2.00}{2016/09/23}{new maintainer: Falk Hanisch}^^A +% \changes{v2.00}{2017/03/27}{re-implementation from scratch}^^A +% \changes{v2.00}{2017/03/27}{package \pkg{subfig} not required anymore}^^A % \changes{v2.00}{2017/03/27}{% % support of subfigures stopped due to the huge number of packages which deal % with this topic and the large variety of implementing this functionality; % naming exported graphics after their consecutive numbering can't be ensured -% for all variants of subfigures, so it's neglected -% } +% for all variants of subfigures, so it's neglected.% +% }^^A % % % @@ -1267,17 +1265,14 @@ svg-extract -- Extract independent graphic files from SVG pictures % \begin{macro}{\svg@tempa} % \begin{macro}{\svg@tempb} % \begin{macro}{\if@svg@tempswa} -% \begin{macro}{\svg@tempcnt} % Internal temporary macros. % \begin{macrocode} %<*base> \newcommand*\svg@tempa{} \newcommand*\svg@tempb{} \newif\if@svg@tempswa -\newcount\svg@tempcnt % % \end{macrocode} -% \end{macro}^^A \svg@tempcnt % \end{macro}^^A \if@svg@tempswa % \end{macro}^^A \svg@tempb % \end{macro}^^A \svg@tempa @@ -1298,14 +1293,14 @@ svg-extract -- Extract independent graphic files from SVG pictures % packages anyways. % % \begin{option}{usexcolor} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{option}{noxcolor} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{macro}{\if@svg@use@xcolor} % \begin{option}{usetransparent} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{option}{notransparent} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{macro}{\if@svg@use@transparent} % Options for preventing packages \pkg{xcolor} and \pkg{transparent} to be % loaded. @@ -1354,14 +1349,15 @@ svg-extract -- Extract independent graphic files from SVG pictures % support of \LaTeX{} can optionally be used. % % \begin{option}{inkscape} -% \changes{v2.00}{2017/02/17}{changed/extended} +% \changes{v2.00}{2017/02/17}{changed/extended}^^A % \begin{macro}{\svg@ink@mode} % The intension of option \opt{inkscape} is to control the running behaviour of -% \app{Inkscape}. It can be switched off at all or invoked only if necessarry -% or the command line call can be forced with every \LaTeX~run. Additionally, -% option \opt{inkscape} can be used as wrapper for options \opt{inkscapeformat}, -% \opt{inkscapelatex}, \opt{inkscapearea} and \opt{inkscapedpi}, which are -% declared later. +% \app{Inkscape}. It can be switched off at all (\opt{inkscape}|=|\val{false}) +% or invoked only if necessarry (\opt{inkscape}|=|\val{true}) or the command +% line call can be forced with every \LaTeX~run (\opt{inkscape}|=|\val{forced}). +% Additionally, option \opt{inkscape} can be used as wrapper for options +% \opt{inkscapeformat}, \opt{inkscapelatex}, \opt{inkscapearea} and +% \opt{inkscapedpi}, which are declared later. % \begin{macrocode} \newcommand*\svg@ink@mode{} \DefineFamilyKey{SVG}{inkscape}[true]{% @@ -1378,9 +1374,15 @@ svg-extract -- Extract independent graphic files from SVG pictures {latexnoexport}{10},{raw}{10},{plain}{10},{simple}{10}% }{\svg@tempa}% \ifx\FamilyKeyState\FamilyKeyStateProcessed% +% \end{macrocode} +% Setting the mode for invoking \app{Inkscape}\dots +% \begin{macrocode} \ifnum\svg@tempa<\thr@@\relax% \let\svg@ink@mode\svg@tempa% \else% +% \end{macrocode} +% \dots and the part as wrapper for different options. +% \begin{macrocode} \ifcase\svg@tempa\relax\or\or\or% pdf \FamilyOptions{SVG}{inkscapeformat=pdf}% \or% eps @@ -1454,9 +1456,9 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{macro}^^A \svg@ink@mode % \end{option}^^A inkscape % \begin{option}{on} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{option}{off} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % Package options which can be used to switch functionality on or off during % the loading of package \pkg{svg}. % \begin{macrocode} @@ -1466,7 +1468,7 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{option}^^A off % \end{option}^^A on % \begin{option}{inkscapeformat} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{macro}{\svg@ink@format} % With option \opt{inkscapeformat} the output format of the \app{Inkscape} % export function, which is called via \cs{ShellEscape}, can be configured. @@ -1498,7 +1500,7 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{macro}^^A \svg@ink@format % \end{option}^^A inkscapeformat % \begin{option}{inkscapelatex} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{macro}{\svg@ink@latex} % This options controls whether the \app{Inkscape} export will be invoked with % or without the generation of a seperate \LaTeX~file. @@ -1509,7 +1511,7 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{macro}^^A \svg@ink@latex % \end{option}^^A inkscapelatex % \begin{option}{inkscapearea} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{macro}{\svg@ink@area} % The exported area for an \app{Inkscape} graphic can be set with this option. % \begin{macrocode} @@ -1531,7 +1533,7 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{macro}^^A \svg@ink@area % \end{option}^^A inkscapearea % \begin{option}{inkscapedpi} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{option}{inkscapedensity} % \begin{macro}{\svg@ink@dpi} % A density can be chosen, which is used during export with \app{Inkscape} for @@ -1559,10 +1561,10 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{option}^^A inkscapedensity % \end{option}^^A inkscapedpi % \begin{option}{inkscapeexe} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{macro}{\svg@ink@exe} % \begin{option}{inkscapeopt} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{macro}{\svg@ink@opt} % With these options, the terminal command for invoking \app{Inkscape} as well % as additional options can be defined. @@ -1588,7 +1590,7 @@ svg-extract -- Extract independent graphic files from SVG pictures % \subsubsection{Setting input folder} % % \begin{option}{svgpath} -% \changes{v2.00}{2017/02/12}{deprecated} +% \changes{v2.00}{2017/02/12}{deprecated}^^A % In version~v1.0 setting the path to SVG~files was done via option. So % this method is provided as well. % \begin{macrocode} @@ -1612,9 +1614,9 @@ svg-extract -- Extract independent graphic files from SVG pictures % \subsubsection{Setting output folder} % % \begin{option}{inkscapepath} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{option}{inkscapename} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{macro}{\svg@out@path} % \begin{macro}{\svg@out@name} % \begin{macro}{\svg@out@base} @@ -1669,10 +1671,10 @@ svg-extract -- Extract independent graphic files from SVG pictures % \begin{option}{width} % \begin{macro}{\svg@param@width} % \begin{option}{height} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{macro}{\svg@param@width} % \begin{option}{scale} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{macro}{\svg@param@scale} % These options determine the size of the included graphics. The usage of % \val{\cs{relax}} as value resets the respective option to the default @@ -1731,7 +1733,7 @@ svg-extract -- Extract independent graphic files from SVG pictures % \begin{option}{apptex} % \begin{macro}{\svg@param@apptex} % \begin{option}{postex} -% \changes{v2.00}{2017/03/02}{deprecated} +% \changes{v2.00}{2017/03/02}{deprecated}^^A % For executing code right before or after the graphic inclusion, two hooks are % defined. % \begin{macrocode} @@ -1765,7 +1767,7 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{macro}^^A \svg@param@pretex % \end{option}^^A pretex % \begin{option}{lastpage} -% \changes{v2.00}{2017/02/20}{new} +% \changes{v2.00}{2017/02/20}{new}^^A % \begin{counter}{svg@param@lastpage} % For \app{Inkscape}~0.91 a bug concerning the \LaTeX~export has been reported % (\url{https://bugs.launchpad.net/ubuntu/+source/inkscape/+bug/1417470}). @@ -1792,7 +1794,7 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{counter}^^A svg@param@lastpage % \end{option}^^A lastpage % \begin{option}{draft} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{macro}{\if@svg@draft} % The option \opt{draft} has the same effect as the eponymous option of package % \pkg{graphicx}. @@ -2202,9 +2204,9 @@ svg-extract -- Extract independent graphic files from SVG pictures % \subsection{User commands} % % \begin{macro}{\svgsetup} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{macro}{\setsvg} -% \changes{v2.00}{2017/02/17}{deprecated} +% \changes{v2.00}{2017/02/17}{deprecated}^^A % The macro \cs{svgsetup} can be used to change options after loading the % package \pkg{svg} both in preamble and the document body. For compatibility % reasons, \cs{setsvg} is also defined. @@ -2215,7 +2217,7 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{macro}^^A \setsvg % \end{macro}^^A \svgsetup % \begin{macro}{\svgpath} -% \changes{v2.00}{2017/02/12}{new} +% \changes{v2.00}{2017/02/12}{new}^^A % \begin{macro}{\svg@path} % With \cs{svgpath} the user can give several root paths to SVG~files in the % same way as \cs{graphicspath} is used. The only difference is that a missing @@ -2239,7 +2241,7 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{macro}^^A \svg@path % \end{macro}^^A \svgpath % \begin{macro}{\includesvg} -% \changes{v2.00}{2017/02/17}{changes, especially to optional parameters} +% \changes{v2.00}{2017/02/17}{changes, especially to optional parameters}^^A % For the inclusion of SVG~files the command \cs{includesvg} is defined. % \begin{macrocode} \newcommand*{\includesvg}[2][]{% @@ -2250,26 +2252,26 @@ svg-extract -- Extract independent graphic files from SVG pictures \svg@deprecated@param% % \end{macrocode} % \begin{parameter}{inkscape} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{parameter}{inkscapeformat} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{parameter}{inkscapelatex} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{parameter}{inkscapearea} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{parameter}{inkscapedpi} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{parameter}{inkscapeopt} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{parameter}{width} % \begin{parameter}{height} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{parameter}{scale} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{parameter}{pretex} % \begin{parameter}{apptex} % \begin{parameter}{draft} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{parameter}{extract} % \begin{parameter}{extractpreamble} % \begin{parameter}{extractformat} @@ -2373,7 +2375,7 @@ svg-extract -- Extract independent graphic files from SVG pictures } % \end{macrocode} % \begin{parameter}{lastpage} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % In addition to the automatic finding of the last page, which is included, it % can also be given directly as parameter. % \begin{macrocode} @@ -2383,9 +2385,9 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{macrocode} % \end{parameter}^^A lastpage % \begin{parameter}{angle} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % \begin{parameter}{origin} -% \changes{v2.00}{2017/02/17}{new} +% \changes{v2.00}{2017/02/17}{new}^^A % The parameters \prm{angle} and \prm{origin} are definied as pendants to the % keys provided by \cs{includegraphics}. % \begin{macrocode} @@ -2408,7 +2410,7 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{parameter}^^A angle % \end{macro}^^A \includesvg % \begin{macro}{\includeinkscape} -% \changes{v2.00}{2017/02/23}{new} +% \changes{v2.00}{2017/02/23}{new}^^A % The command \cs{includeinkscape} can be used for including the export results % of \app{Inkscape}, if this part of the job was done in another way. % \begin{macrocode} @@ -2714,33 +2716,33 @@ svg-extract -- Extract independent graphic files from SVG pictures \newcommand*\svg@get@lastpage[1]{% \ifstr{\svg@ink@format}{pdf}{% \begingroup% - \svg@tempcnt=\m@ne\relax% + \@tempcnta=\m@ne\relax% \ifx\XeTeXpdfpagecount\@undefined% \ifpdf% \ifx\pdfximage\@undefined% \ifx\saveimageresource\@undefined\else% \saveimageresource{#1}% - \svg@tempcnt=\lastsavedimageresourcepages\relax% + \@tempcnta=\lastsavedimageresourcepages\relax% \fi% \else% \pdfximage{#1}% - \svg@tempcnt=\pdflastximagepages\relax% + \@tempcnta=\pdflastximagepages\relax% \fi% \fi% \else% - \svg@tempcnt=\XeTeXpdfpagecount#1\relax% + \@tempcnta=\XeTeXpdfpagecount#1\relax% \fi% - \ifnum\svg@tempcnt=\m@ne\relax% + \ifnum\@tempcnta=\m@ne\relax% \PackageWarning{svg}{% It wasn't possible to detect the last page\MessageBreak% of `#1'% }% \else% - \PackageInfo{svg}{Last page of `#1' is \the\svg@tempcnt}% + \PackageInfo{svg}{Last page of `#1' is \the\@tempcnta}% \fi% \edef\svg@tempa{% \noexpand\endgroup% - \noexpand\FamilyOptions{SVG}{lastpage=\the\svg@tempcnt}% + \noexpand\FamilyOptions{SVG}{lastpage=\the\@tempcnta}% }% \svg@tempa% }{}% @@ -3014,7 +3016,7 @@ svg-extract -- Extract independent graphic files from SVG pictures % \subsubsection{Controlling the extract process} % % \begin{option}{extract} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\if@svgx@run} % With option \opt{extract} it can be controlled, if the extraction of % independent graphic files should be done. @@ -3051,9 +3053,9 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{macro}^^A \if@svgx@run % \end{option}^^A extract % \begin{option}{on} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{option}{off} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % Package options which can be used to switch functionality on or off during % the loading of package \pkg{svg-extract}. % \begin{macrocode} @@ -3065,12 +3067,12 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{option}^^A off % \end{option}^^A on % \begin{option}{extractformat} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\svgx@format} % \begin{option}{pdf} -% \changes{v2.00}{2017/03/02}{deprecated} +% \changes{v2.00}{2017/03/02}{deprecated}^^A % \begin{option}{eps} -% \changes{v2.00}{2017/03/02}{deprecated} +% \changes{v2.00}{2017/03/02}{deprecated}^^A % Option \opt{extractformat} controls the output format (\val{pdf/eps/ps}). It % is set to \val{pdf} or, if dvi output could be detected, to \val{eps} during % initialization. @@ -3122,14 +3124,14 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{macro}^^A \svgx@format % \end{option}^^A extractformat % \begin{option}{extractpreamble} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{option}{preamble} -% \changes{v2.00}{2017/02/24}{deprecated} +% \changes{v2.00}{2017/02/24}{deprecated}^^A % \begin{macro}{\svgx@preamble} % \begin{option}{extractpreambleend} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{option}{end} -% \changes{v2.00}{2017/02/24}{deprecated} +% \changes{v2.00}{2017/02/24}{deprecated}^^A % \begin{macro}{\svgx@endpreamble} % For the extraction process, a preamble is necessarry for a separate auxiliary % \LaTeX~file. By default, the preamble of the main document is used, which end @@ -3170,7 +3172,7 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{option}^^A preamble % \end{option}^^A extractpreamble % \begin{option}{extractruns} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{counter}{svgx@runs} % With this option, the number of \LaTeX~runs for the separate auxiliary file % can be set. @@ -3196,15 +3198,15 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{counter}^^A svgx@runs % \end{option}^^A extractruns % \begin{option}{latexexe} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{option}{pdflatex} -% \changes{v2.00}{2017/02/24}{deprecated} +% \changes{v2.00}{2017/02/24}{deprecated}^^A % \begin{macro}{\svgx@latex@exe} % \begin{option}{latexext} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\svgx@latex@ext} % \begin{option}{latexopt} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\svgx@latex@opt} % The command and facultative options for the \LaTeX~call of the separate % auxiliary file. The default is set according to the currently used compiler. @@ -3256,27 +3258,27 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{option}^^A latexexe % \end{option}^^A pdflatexexe % \begin{option}{dvipsopt} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\svgx@dvips@exe} % \begin{macro}{\svgx@dvips@opt} % \begin{option}{pstoepsopt} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\svgx@pstoeps@exe} % \begin{macro}{\svgx@pstoeps@opt} % \begin{option}{pstopdfopt} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\svgx@pstopdf@exe} % \begin{macro}{\svgx@pstopdf@opt} % \begin{option}{pdftoepsopt} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\svgx@pdftoeps@exe} % \begin{macro}{\svgx@pdftoeps@opt} % \begin{option}{pdftopsopt} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\svgx@pdftops@exe} % \begin{macro}{\svgx@pdftops@opt} % \begin{option}{pdftops} -% \changes{v2.00}{2017/02/24}{deprecated} +% \changes{v2.00}{2017/02/24}{deprecated}^^A % Options and macros for calling convert commands, which are supplied by most % \LaTeXe~distributions. These are used to generate all files, which are % supported by option \opt{extractformat}, as they don't need an additional @@ -3357,7 +3359,7 @@ svg-extract -- Extract independent graphic files from SVG pictures % \app{ImageMagick} and \app{Ghostscript} can be used for converting graphics. % % \begin{option}{convert} -% \changes{v2.00}{2017/02/24}{changed/extended} +% \changes{v2.00}{2017/02/24}{changed/extended}^^A % \begin{macro}{\if@svgx@cnv@run} % \begin{macro}{\svgx@cnv@cmd} % The option \opt{convert} can be used to define, which of both applications @@ -3452,10 +3454,10 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{macro}^^A \if@svgx@cnv@run % \end{option}^^A convert % \begin{option}{convertformat} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\svgx@cnv@format} % \begin{option}{png} -% \changes{v2.00}{2017/03/02}{deprecated} +% \changes{v2.00}{2017/03/02}{deprecated}^^A % Option \opt{convertformat} controls the output format for converted files. It % is set to \val{png} by default. % \begin{macrocode} @@ -3491,7 +3493,7 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{macro}^^A \svgx@cnv@format % \end{option}^^A convertformat % \begin{option}{convertdpi} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{option}{convertdensity} % \begin{macro}{\svgx@cnv@dpi} % The option \opt{convertdpi} is meant to define the used density during the @@ -3532,13 +3534,13 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{option}^^A convertdensity % \end{option}^^A convertdpi % \begin{option}{magickexe} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\svgx@magick@exe} % \begin{option}{magicksetting} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\svgx@magick@set} % \begin{option}{magickoperator} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\svgx@magick@opr} % Setting the command including maybe the path to \app{ImageMagick}. The keys % \opt{magicksetting} and \opt{magickoperator} should be used to add optional @@ -3576,13 +3578,13 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{macro}^^A \svgx@magick@exe % \end{option}^^A magickexe % \begin{option}{gsexe} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\svgx@gs@exe} % \begin{option}{gsopt} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\svgx@gs@opt} % \begin{option}{gsdevice} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\svgx@gs@device} % Options to set the command including maybe the path to \app{Ghostscript}. As % \app{Ghostscript} needs a specific device defined for different output @@ -3625,14 +3627,14 @@ svg-extract -- Extract independent graphic files from SVG pictures % \subsubsection{Setting output folder} % % \begin{option}{extractpath} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{option}{path} -% \changes{v2.00}{2017/02/24}{deprecated} +% \changes{v2.00}{2017/02/24}{deprecated}^^A % \begin{option}{extractname} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{option}{name} -% \changes{v2.00}{2017/02/24}{deprecated} -% \changes{v2.00}{2017/02/24}{support of \pkg{subfig} removed} +% \changes{v2.00}{2017/02/24}{deprecated}^^A +% \changes{v2.00}{2017/02/24}{support of \pkg{subfig} removed}^^A % \begin{macro}{\svgx@out@path} % \begin{macro}{\svgx@out@name} % \begin{macro}{\if@svgx@out@sec} @@ -3723,13 +3725,13 @@ svg-extract -- Extract independent graphic files from SVG pictures % \subsubsection{Options for the extraction of graphics} % % \begin{option}{extractwidth} -% \changes{v2.00}{2017/02/20}{new} +% \changes{v2.00}{2017/02/20}{new}^^A % \begin{macro}{\svgx@param@width} % \begin{option}{extractheight} -% \changes{v2.00}{2017/02/20}{new} +% \changes{v2.00}{2017/02/20}{new}^^A % \begin{macro}{\svgx@param@width} % \begin{option}{extractscale} -% \changes{v2.00}{2017/02/20}{new} +% \changes{v2.00}{2017/02/20}{new}^^A % \begin{macro}{\svgx@param@scale} % For graphic extraction, the given settings regarding the size for inclusion % can be overwritten with these options. Using \val{\cs{relax}} as value leads @@ -3808,10 +3810,10 @@ svg-extract -- Extract independent graphic files from SVG pictures % \end{macro}^^A \svgx@param@width % \end{option}^^A extractwidth % \begin{option}{extractpretex} -% \changes{v2.00}{2017/02/20}{new} +% \changes{v2.00}{2017/02/20}{new}^^A % \begin{macro}{\svgx@param@pretex} % \begin{option}{extractapptex} -% \changes{v2.00}{2017/02/20}{new} +% \changes{v2.00}{2017/02/20}{new}^^A % \begin{macro}{\svgx@param@apptex} % \begin{option}{extractpostex} % The similar hooks for executing code right before or after the graphic @@ -3865,7 +3867,7 @@ svg-extract -- Extract independent graphic files from SVG pictures % \subsubsection{Miscellaneous options} % % \begin{option}{clean} -% \changes{v2.00}{2017/02/24}{changes, file list possible} +% \changes{v2.00}{2017/02/24}{changes, file list possible}^^A % \begin{option}{clear} % \begin{macro}{\svgx@clean} % With option \opt{clean} files generated during the extraction process can be @@ -3936,9 +3938,9 @@ svg-extract -- Extract independent graphic files from SVG pictures % \subsection{User commands} % % \begin{macro}{\svghidepreamblestart} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % \begin{macro}{\svghidepreambleend} -% \changes{v2.00}{2017/02/24}{new} +% \changes{v2.00}{2017/02/24}{new}^^A % Some dummys for package \pkg{svg}. % \begin{macrocode} %<*base> @@ -4873,40 +4875,42 @@ svg-extract -- Extract independent graphic files from SVG pictures % \begin{macro}{\svgx@box} % Within the preamble of the auxiliary \LaTeX~file, the desired grahic is used % to setup a box, which is used both to define the papersize as well as for the -% output itself. +% output itself. For \TUDScript-classes, the crop-mode is acrivated. % \begin{macrocode} \newbox\svgx@box \newcommand*\svgxsetbox[2][]{% - \sbox\svgx@box{\svg@@input[{#1},draft=false]{#2}}% -% \end{macrocode} -% Setting crop-mode for the \TUDScript-classes. -% \begin{macrocode} \csname @tud@x@standalone@croptrue\endcsname% + \sbox\svgx@box{\svg@@input[{#1},draft=false]{#2}}% \svgxsetpapersize% } % \end{macrocode} % \end{macro}^^A \svgx@box % \end{macro}^^A \svgxsetbox % \begin{macro}{\svgxsetpapersize} +% \changes{v2.00a}{2017/02/28}{Bug fix for checking stock- and mediasizes}^^A % This macro sets all well known length macros for defining the paper size as % well as the type area to the size of \cs{svgx@box}. % \begin{macrocode} \newcommand*\svgxsetpapersize{% \setlength\paperwidth{\the\wd\svgx@box}% - \ifx\stockwidth\@undefined\else% +% \end{macrocode} +% Due to the fact, that the lengths for stock- and mediasizes are maybe set to +% \cs{relax}, these macros are checked with \cs{scr@ifundefinedorrelax}. +% \begin{macrocode} + \scr@ifundefinedorrelax{stockwidth}{}{% \setlength\stockwidth{\paperwidth}% - \fi% - \ifx\mediawidth\@undefined\else% + }% + \scr@ifundefinedorrelax{mediawidth}{}{% \setlength\mediawidth{\paperwidth}% - \fi% + }% \setlength\textwidth{\paperwidth}% \setlength\paperheight{\the\dimexpr\ht\svgx@box+\dp\svgx@box\relax}% - \ifx\stockheight\@undefined\else% + \scr@ifundefinedorrelax{stockheight}{}{% \setlength\stockheight{\paperheight}% - \fi% - \ifx\mediaheight\@undefined\else% + }% + \scr@ifundefinedorrelax{mediaheight}{}{% \setlength\mediaheight{\paperheight}% - \fi% + }% \setlength\textheight{\paperheight}% % \end{macrocode} % Any other length regarding the layout is set to have no influence at all. -- cgit v1.2.3