diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/oberdiek/epstopdf.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/oberdiek/epstopdf.dtx | 564 |
1 files changed, 470 insertions, 94 deletions
diff --git a/Master/texmf-dist/source/latex/oberdiek/epstopdf.dtx b/Master/texmf-dist/source/latex/oberdiek/epstopdf.dtx index 2086605677a..210c8b54421 100644 --- a/Master/texmf-dist/source/latex/oberdiek/epstopdf.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/epstopdf.dtx @@ -18,7 +18,7 @@ % This work consists of the main source file epstopdf.dtx % and the derived files % epstopdf.sty, epstopdf.pdf, epstopdf.ins, epstopdf.drv, -% epstopdf-test1.tex. +% epstopdf-base.sty, epstopdf-test1.tex. % % Distribution: % CTAN:macros/latex/contrib/oberdiek/epstopdf.dtx @@ -52,6 +52,7 @@ % % Installation: % TDS:tex/latex/oberdiek/epstopdf.sty +% TDS:tex/latex/oberdiek/epstopdf-base.sty % TDS:doc/latex/oberdiek/epstopdf.pdf % TDS:doc/latex/oberdiek/test/epstopdf-test1.tex % TDS:source/latex/oberdiek/epstopdf.dtx @@ -69,7 +70,7 @@ \input docstrip.tex \Msg{************************************************************************} \Msg{* Installation} -\Msg{* Package: epstopdf 2009/03/01 v1.8 Conversion with epstopdf on the fly (HO)} +\Msg{* Package: epstopdf 2009/07/16 v2.2 Conversion with epstopdf on the fly (HO)} \Msg{************************************************************************} \keepsilent @@ -98,7 +99,7 @@ This Current Maintainer of this work is Heiko Oberdiek. This work consists of the main source file epstopdf.dtx and the derived files epstopdf.sty, epstopdf.pdf, epstopdf.ins, epstopdf.drv, - epstopdf-test1.tex. + epstopdf-base.sty, epstopdf-test1.tex. \endpreamble \let\MetaPrefix\DoubleperCent @@ -108,6 +109,7 @@ and the derived files \file{epstopdf.drv}{\from{epstopdf.dtx}{driver}}% \usedir{tex/latex/oberdiek}% \file{epstopdf.sty}{\from{epstopdf.dtx}{package}}% + \file{epstopdf-base.sty}{\from{epstopdf.dtx}{base}}% \usedir{doc/latex/oberdiek/test}% \file{epstopdf-test1.tex}{\from{epstopdf.dtx}{test1}}% } @@ -116,9 +118,9 @@ and the derived files \Msg{************************************************************************} \Msg{*} \Msg{* To finish the installation you have to move the following} -\Msg{* file into a directory searched by TeX:} +\Msg{* files into a directory searched by TeX:} \Msg{*} -\Msg{* epstopdf.sty} +\Msg{* epstopdf.sty, epstopdf-base.sty} \Msg{*} \Msg{* And install the following script file:} \Msg{*} @@ -139,7 +141,7 @@ and the derived files %<*driver> \NeedsTeXFormat{LaTeX2e} \ProvidesFile{epstopdf.drv}% - [2009/03/01 v1.8 Conversion with epstopdf on the fly (HO)]% + [2009/07/16 v2.2 Conversion with epstopdf on the fly (HO)]% \documentclass{ltxdoc} \usepackage{holtxdoc}[2008/08/11] \begin{document} @@ -148,7 +150,7 @@ and the derived files %</driver> % \fi % -% \CheckSum{618} +% \CheckSum{907} % % \CharacterTable % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z @@ -169,7 +171,7 @@ and the derived files % \GetFileInfo{epstopdf.drv} % % \title{The \xpackage{epstopdf} package} -% \date{2009/03/01 v1.8} +% \date{2009/07/16 v2.2} % \author{Heiko Oberdiek\\\xemail{oberdiek@uni-freiburg.de}} % % \maketitle @@ -207,7 +209,7 @@ and the derived files % does not allow the execution of external commands. % Therefore commands in the last argument of % \cs{DeclareGraphicsRule} were of no use. -% But external programs can be calles within \pdfTeX. +% But external programs can be called within \pdfTeX. % This feature is called ``shell escape'' or ``write 18'' % and must usually enabled explicitely because of security reasons. % Now, this package \xpackage{epstopdf} hooks @@ -246,8 +248,8 @@ and the derived files % be used and configured by \cs{DeclareGraphicsRule}. % Example: % \begin{quote} -% |\DeclareGraphicsRule{.eps}{pdf}{.pdf}{%|\\ -% | `ps2pdf -dEPSCrop #1 \OutputFile|\\ +% |\epstopdfDeclareGraphicsRule{.eps}{pdf}{.pdf}{%|\\ +% | ps2pdf -dEPSCrop #1 \OutputFile|\\ % |}| % \end{quote} % \end{itemize} @@ -276,28 +278,34 @@ and the derived files % The algorithm: % \begin{quote} % \def\>{\mbox{}\quad} -% function search( \meta{filebase} ) +% function search( \meta{filebase} )\\ % \>foreach \meta{ext} in \meta{graphics extensions}\\ % \>\>foreach \meta{dir} in \meta{current directory}, \meta{\cs{graphicspath}}\\ % \>\>\>\meta{file} := \meta{dir} + \meta{filebase} + \meta{ext}\\ -% \>\>\>if exist \meta{file} -% \>\>\>\>return found +% \>\>\>if exist \meta{file}\\ +% \>\>\>\>return found\\ % \>return not found % \end{quote} % Package \xpackage{epstopdf} puts \xfile{.eps} at the end of the -% graphics extension list. This is the behaviour of option +% graphics extension search list. This is the behaviour of option % \xoption{append} that is enabled by default. % That means, the conversion is called last % unless a supported file type cannot be found earlier. This avoids % unnecessary conversion steps that slow down the \LaTeX\ run. % If you want to use option \xoption{update} and your \pdfTeX\ supports -% it, then an outdated PDF file also would be found earlier. -% Therefore extension \xfile{.eps} should be put in front of the list. -% This is achieved by option \xoption{prepend}. Then the EPS file -% is found before the PDF file. Then option \xoption{update} -% have the control and can compare file dates. +% it, then an outdated PDF file also would be found earlier unless +% \xoption{suffix} is used that is the default since version 2.0. +% +% With an empty option \xoption{suffix} and option +% \xoption{prepend} there is a risk that an original PDF file is overwritten: % -% Note: Usually the conversion program needs the exact location +% If the original image file is the PDF file and there is also a generated +% EPS file, then the original PDF file can be regenerated (depending +% on the option settings) and the original PDF file gets lost. +% Therefore option \xoption{suffix} is introduced in version 1.9 +% to create a separate name space for generated output files. +% +% \textbf{Note:} Usually the conversion program needs the exact location % of the image file. Usually the current directory works. % Also if the image file is found using \cs{graphicspath}, the % location is known. However, if the image is somewhere @@ -312,6 +320,14 @@ and the derived files % Options can be given as package options or later using: % \begin{declcs}{epstopdfsetup} \M{key value list} % \end{declcs} +% \LaTeX\ expands the option list before passing the option list +% to the package's option handling code. This can fail +% for option \xoption{suffix} if it contains some of the macros +% described below. Use \cs{epstopdfsetup} after the package is loaded. +% Or load package \xpackage{kvoptions-patch} before. This package +% is also loaded by option \xoption{patch} of package \xpackage{kvoptions}. +% \LaTeX's option code is redefined to respect key value options and +% let the values untouched. % % \begin{description} % \def\It#1{\item[\xoption{#1}:]}^^A @@ -332,33 +348,100 @@ and the derived files % \end{quote} % For other directories ensure, that they can be found. % See \cs{graphicspath} or |TEXINPUTS|. +% \It{suffix} +% This option takes a string that is put between the file name base +% and the extension of the output file. Rationale: It can happen, +% that a PDF file is the original file and the EPS file the +% generated file. If now the package thinks, that the PDF file +% is the generated file, it will `regnerate' it. But in reality +% the original file is lost. Therefore I recommend to use this +% option always to generate a separate name space for generated +% files. Proposed value is \texttt{-generated} or \texttt{.generated}. +% The suffix \texttt{.generated} will also work here without the need for +% package \xpackage{grffile}). +% +% Example: +% \begin{quote} +% |\epstopdfsetup{suffix=-generated}|\\ +% Then \xfile{foo.eps} is converted to \xfile{foo-generated.pdf}. +% \end{quote} +% \cs{SourceExt} can be used inside the suffix string. +% It's will be replaced by the extension of the image source +% file without the leading dot, for instance: +% \begin{quote} +% |\epstopdfsetup{suffix=-\SourceExt-converted-to}|\\ +% \xfile{foo.eps} $\Rightarrow$ \xfile{foo-eps-converted-to.pdf} +% \end{quote} +% See also the next option \xoption{prefersuffix} that +% modifies the behaviour of option \xoption{suffix} in some +% cases. +% +% Default for \xoption{suffix} is `|-\SourceExt-converted-to|'. +% +% \It{prefersuffix} +% If a suffix is set by option \xoption{suffix}, then there can be +% two image file names that could be taken into account for inclusion: +% A image file name with the suffix string inside +% its name and a image file name without; e.g. for \xfile{foo.eps} +% the names could be: +% \begin{quote} +% \xfile{foo-suffix.pdf}, \xfile{foo.pdf} +% \end{quote} +% If option \xoption{perfersuffix} is turned on, the +% file \xfile{foo-suffix.pdf} and its generation is preferred +% over using \xfile{foo.pdf}. Otherwise \xfile{foo.pdf} is included +% without generating \xfile{foo-suffix.pdf}. +% The default of option \xoption{prefersuffix} is \texttt{true}. % \It{verbose} -% It prints some information about the image in the \xfile{.log} file. +% It prints some information about the image in the \xfile{.log} file +% (default). % \end{description} % % \subsection{Configuration} % -% \subsubsection{Configuration file} +% \subsubsection{System configuration file \xfile{epstopdf-sys.cfg}} +% +% If \xfile{epstopdf-sys} exists it is loaded at the end of the +% package \xpackage{epstopdf-base} and before the user configuration +% file. It's intended for TeX distributors. Thus they could add +% additional conversion rules (e.g., .gif -> .png) or set options. +% +% \subsubsection{User configuration file \xfile{epstopdf.cfg}} % % A configuration file \xfile{epstopdf.cfg} is loaded at the end % of the package if it exists. It can be used for changing -% the default option setting. My favourite setting is: +% the default option setting. Example: % \begin{quote} -% |\epstopdfsetup{update,prepend,verbose}| +% |\epstopdfsetup{verbose=false}| % \end{quote} % % \subsubsection{Conversion program} % -% You can use \cs{DeclareGraphicsRule} the same way as the +% You can use \cs{DeclareGraphicsRule} in a similar way as the % route via \xprogram{dvips} to specify the conversion -% command line, examples below. -% -% Additionally you can use the following macros: +% command line. +% The conversion argument starts with a back tick, followed +% by the conversion command including parameters. +% +% The whole conversion argument should also be wrapped inside +% \cs{epstopdfcall}. This reduces the problem with packages +% (e.g. \xpackage{pst-pdf}) that use the conversion argument +% and expands it. Macros \cs{SourceFile}, \cs{OutputFile}, and +% \cs{SourceExt} are not defined outside \xpackage{epstopdf-base}'s +% \cs{Gin@setfile} and error messages because of undefined +% command names are the result. If \cs{epstopdfcall} detects that +% it is called outside \xpackage{epstopdf-base}'s \cs{Gin@setfile} +% then it replaces the conversion argument by +% package \xpackage{graphics}'s +% default, usually the image file. +% +% The following macros are available inside: % \begin{description} % \def\It#1{\item[\cs{#1}:]} % \It{OutputFile}: output file name (with known path and extension) % \It{SourceFile}: source file name (with known path and extension), -% usually the same as |#1|. +% usually the same as |#1|, +% \It{SourceExt}: source extension without leading dot. % \end{description} % % \paragraph{Conversion from EPS to PDF.} @@ -366,11 +449,19 @@ and the derived files % EPS to PDF. Example that uses \xprogram{Ghostscript}: % \begin{quote} % |\DeclareGraphicsRule{.eps}{pdf}{.pdf}{%|\\ -% | `ps2pdf -dEPSCrop #1 \noexpand\OutputFile|\\ +% | \epstopdfcall{`ps2pdf -dEPSCrop #1 \noexpand\OutputFile}%|\\ % |}| % \end{quote} % \cs{DeclareGraphicsRule} expands the argument, therefore \cs{noexpand} -% is necessary. +% is necessary. As convenience package \xpackage{epstopdf-base} defines +% \cs{epstopdfDeclareGraphicsRule}. Then the conversion argument +% is not expanded, \cs{epstopdfcall} and the back tick are added: +% \begin{quote} +% |\epstopdfDeclareGraphicsRule{.eps}{pdf}{.pdf}{%|\\ +% | ps2pdf -dEPSCrop #1 \OutputFile|\\ +% |}| +% \end{quote} +% % Also \cs{OutputFile} respects the setting of option \xoption{outdir}. % % \subsection{Other image formats} @@ -381,8 +472,8 @@ and the derived files % ImageMagick's \xprogram{convert}: %\begin{quote} %\begin{verbatim} -%\DeclareGraphicsRule{.gif}{png}{.png}{% -% `convert #1 \noexpand\OutputFile +%\epstopdfDeclareGraphicsRule{.gif}{png}{.png}{% +% convert #1 \OutputFile %} %\end{verbatim} %\end{quote} @@ -405,9 +496,8 @@ and the derived files %<*package> % \end{macrocode} % -% \subsection{Preparations} +% \subsection{Wrapper package} % -% \subsubsection{Relead check and identification} % Reload check, especially if the package is not used with \LaTeX. % \begin{macrocode} \begingroup @@ -474,7 +564,134 @@ and the derived files \fi \expandafter\x\csname ver@epstopdf.sty\endcsname \ProvidesPackage{epstopdf}% - [2009/03/01 v1.8 Conversion with epstopdf on the fly (HO)] + [2009/07/16 v2.2 Conversion with epstopdf on the fly (HO)] +% \end{macrocode} +% \begin{macrocode} +\begingroup + \catcode123 1 % { + \catcode125 2 % } + \def\x{\endgroup + \expandafter\edef\csname ETE@AtEnd\endcsname{% + \catcode35 \the\catcode35\relax + \catcode64 \the\catcode64\relax + \catcode123 \the\catcode123\relax + \catcode125 \the\catcode125\relax + }% + }% +\x +\catcode35 6 % # +\catcode64 11 % @ +\catcode123 1 % { +\catcode125 2 % } +\def\TMP@EnsureCode#1#2{% + \edef\ETE@AtEnd{% + \ETE@AtEnd + \catcode#1 \the\catcode#1\relax + }% + \catcode#1 #2\relax +} +\TMP@EnsureCode{42}{12}% * +\TMP@EnsureCode{45}{12}% - +\TMP@EnsureCode{47}{12}% / +% \end{macrocode} +% +% \begin{macrocode} +\let\ETE@SavedAtEnd\ETE@AtEnd +\RequirePackage{epstopdf-base}[2009/07/16] +\let\ETE@AtEnd\ETE@SavedAtEnd +% \end{macrocode} +% +% \subsubsection{Option handling} +% +% \begin{macrocode} +\DeclareOption*{% + \expandafter\epstopdfsetup\expandafter{\CurrentOption}% +} +\ProcessOptions*\relax +% \end{macrocode} +% +% \begin{macrocode} +\ETE@AtEnd +%</package> +% \end{macrocode} +% +% \subsection{Base package} +% +% \begin{macrocode} +%<*base> +% \end{macrocode} +% +% \subsection{Preparations} +% +% \subsubsection{Relead check and identification} +% +% Reload check, especially if the package is not used with \LaTeX. +% \begin{macrocode} +\begingroup + \catcode44 12 % , + \catcode45 12 % - + \catcode46 12 % . + \catcode58 12 % : + \catcode64 11 % @ + \expandafter\let\expandafter\x\csname ver@epstopdf-base.sty\endcsname + \ifcase 0% + \ifx\x\relax % plain + \else + \ifx\x\empty % LaTeX + \else + 1% + \fi + \fi + \else + \catcode35 6 % # + \catcode123 1 % { + \catcode125 2 % } + \expandafter\ifx\csname PackageInfo\endcsname\relax + \def\x#1#2{% + \immediate\write-1{Package #1 Info: #2.}% + }% + \else + \def\x#1#2{\PackageInfo{#1}{#2, stopped}}% + \fi + \x{epstopdf-base}{The package is already loaded}% + \endgroup + \expandafter\endinput + \fi +\endgroup +% \end{macrocode} +% Package identification: +% \begin{macrocode} +\begingroup + \catcode35 6 % # + \catcode40 12 % ( + \catcode41 12 % ) + \catcode44 12 % , + \catcode45 12 % - + \catcode46 12 % . + \catcode47 12 % / + \catcode58 12 % : + \catcode64 11 % @ + \catcode123 1 % { + \catcode125 2 % } + \expandafter\ifx\csname ProvidesPackage\endcsname\relax + \def\x#1#2#3[#4]{\endgroup + \immediate\write-1{Package: #3 #4}% + \xdef#1{#4}% + }% + \else + \def\x#1#2[#3]{\endgroup + #2[{#3}]% + \ifx#1\@undefined + \xdef#1{#3}% + \fi + \ifx#1\relax + \xdef#1{#3}% + \fi + }% + \fi +\expandafter\x\csname ver@epstopdf-base.sty\endcsname +\ProvidesPackage{epstopdf-base}% + [2009/07/16 v2.2 Base part for package epstopdf] % \end{macrocode} % % \subsubsection{Catcodes} @@ -593,10 +810,32 @@ and the derived files \DeclareVoidOption{prepend}{\ETE@prependtrue} \DeclareVoidOption{append}{\ETE@prependfalse} \DeclareStringOption{outdir} -\ProcessKeyvalOptions* +\DeclareStringOption{suffix} +\DeclareBoolOption{prefersuffix} +% \end{macrocode} +% Options \xoption{disable} and \xoption{enable} are for testing +% only. Therefore they are not documented on purpose. +% \begin{macrocode} +\DeclareBoolOption{disable} +\DeclareComplementaryOption{enable}{disable} +% \end{macrocode} +% \begin{macrocode} \newcommand*{\epstopdfsetup}{\setkeys{ETE}} % \end{macrocode} % +% \subsubsection{Default setting} +% +% \begin{macrocode} +\epstopdfsetup{% + verbose,% + enable,% + append,% + update,% + prefersuffix,% + suffix=-\SourceExt-converted-to% +} +% \end{macrocode} +% % \subsection{Make and verbose} % % \begin{macrocode} @@ -681,79 +920,177 @@ and the derived files \@ehc }% \fi +\def\ETE@IfFileExists{% + \begingroup\expandafter\expandafter\expandafter\endgroup + \expandafter\ifx\csname grffile@IfFileExists\endcsname\relax + \expandafter\IfFileExists + \else + \global\let\ETE@IfFileExists\grffile@IfFileExists + \expandafter\grffile@IfFileExists + \fi +} +\def\ETE@Skip#1#2\x\fi\fi{% + \fi + \fi + \endgroup + \fi + \fi + #1% +} +\newif\ifETE@InsideSetfile +\newcommand*{\epstopdfcall}[1]{% + \ifETE@InsideSetfile + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {`#1}% + {\Gin@base\Gin@ext}% +} +\def\ETE@DefCommandLine#1{% + \edef\CommandLine{\expandafter\fi\if`#1}% +} +\def\ETE@DefX#1{% + \expandafter\expandafter\expandafter\def + \expandafter\expandafter\expandafter\x + \expandafter\expandafter\expandafter{% + \expandafter\fi\if`#1\relax\else + }% +} \def\Gin@setfile#1#2#3{% - \if`\@car #3\relax\@nil + \ifETE@disable + \ETE@OrgGin@setfile{#1}{#2}{#3}% + \else \begingroup - \def\GraphicsType{#1}% - \def\GraphicsRead{#2}% - \ifx\Gin@ext\relax - \def\SourceFile{\Gin@base\Gin@eext}% - \else - \def\SourceFile{\Gin@base\Gin@ext}% - \fi - \let\OutputDirectory\ETE@outdir - \ifx\OutputDirectory\@empty - \def\OutputFile{\Gin@base#2}% - \else - \begingroup - \filename@parse{\Gin@base#2}% - \edef\x{\endgroup - \def\noexpand\OutputFile{% - \OutputDirectory\filename@base#2% + \ETE@InsideSetfiletrue + \ETE@DefX{#3}% + \expandafter\endgroup + \ifx\x\@empty + \ETE@OrgGin@setfile{#1}{#2}{#3}% + \else + \begingroup + \ETE@InsideSetfiletrue + \def\GraphicsType{#1}% + \def\GraphicsRead{#2}% + \ifETE@prefersuffix + \else + \ifx\ETE@suffix\@empty + \else + \ETE@IfFileExists{\Gin@base\GraphicsRead}{% + \ETE@Skip{% + \ETE@OrgGin@setfile{#1}{#2}{\Gin@base#2}% + }% + }{% + \let\next\relax }% - }% - \x - \fi - \edef\CommandLine{\@cdr#3\@empty\@nil}% - \ifETE@verbose - \@PackageInfo{epstopdf}{% - \ETE@FileInfo{Source}\SourceFile\MessageBreak - \ETE@FileInfo{Output}\OutputFile\MessageBreak - Command: <\CommandLine>\MessageBreak - \string\includegraphics - }% - \fi - \ETE@Make\SourceFile\OutputFile{% - \pdf@system{\CommandLine}% - \ifETE@verbose - \@PackageInfoNoLine{epstopdf}{% - \ETE@FileInfo{Result}\OutputFile - }% + \next + \fi \fi - }% - \edef\x{\endgroup + \ifx\Gin@ext\relax + \let\SourceExt\Gin@eext + \def\SourceFile{\Gin@base\Gin@eext}% + \else + \let\SourceExt\Gin@ext + \def\SourceFile{\Gin@base\Gin@ext}% + \fi + \edef\SourceExt{% remove dot + \expandafter\@cdr\SourceExt\@empty\@nil + }% + \let\OutputDirectory\ETE@outdir \ifx\OutputDirectory\@empty + \edef\OutputFile{\ETE@GenerateName{\Gin@base}{#2}}% \else - \def\noexpand\Gin@base{% - \OutputDirectory\noexpand\filename@base + \begingroup + \filename@parse{\Gin@base#2}% + \edef\x{\endgroup + \def\noexpand\OutputFile{% + \ETE@GenerateName{% + \OutputDirectory\filename@base + }{#2}% + }% + }% + \x + \fi + \ETE@DefCommandLine{#3}% + \ifETE@verbose + \@PackageInfo{epstopdf}{% + \ETE@FileInfo{Source}\SourceFile\MessageBreak + \ETE@FileInfo{Output}\OutputFile\MessageBreak + Command: <\CommandLine>\MessageBreak + \string\includegraphics }% \fi - \noexpand\ETE@OrgGin@setfile{% - \GraphicsType - }{% - \GraphicsRead - }{% - \OutputFile + \ETE@Make\SourceFile\OutputFile{% + \pdf@system{\CommandLine}% + \ifETE@verbose + \@PackageInfoNoLine{epstopdf}{% + \ETE@FileInfo{Result}\OutputFile + }% + \fi }% - }% - \x + \edef\x{\endgroup + \ifx\OutputDirectory\@empty + \else + \def\noexpand\Gin@base{% + \OutputDirectory\noexpand\filename@base + }% + \fi + \ifx\ETE@suffix\@empty + \else + \edef\noexpand\Gin@base{\Gin@base\ETE@suffix}% + \fi + \noexpand\ETE@OrgGin@setfile{% + \GraphicsType + }{% + \GraphicsRead + }{% + \OutputFile + }% + }% + \x + \fi + \fi +} +\def\ETE@GenerateName#1#2{% + #1\ETE@suffix#2% +} +% \end{macrocode} +% +% \subsection{Declare graphics rule} +% +% \begin{macrocode} +\newcommand*{\epstopdfDeclareGraphicsRule}[4]{% + \ifx\\#4\\% + \@PackageError{epstopdf-base}{% + Conversion command is missing% + }\@ehc \else - \ETE@OrgGin@setfile{#1}{#2}{#3}% + \begingroup + \@ifundefined{Gin@rule@#1}{% + }{% + \@PackageInfo{epstopdf-base}{% + Redefining graphics rule for `#1'% + }% + }% + \endgroup + \@namedef{Gin@rule@#1}##1{{#2}{#3}{\epstopdfcall{#4}}}% \fi } % \end{macrocode} % % \cs{DeclareGraphicsRule} for .eps % \begin{macrocode} -\expandafter\ifx\csname Gin@rule@.eps\endcsname\relax -\else - \@PackageInfo{epstopdf}{Overwriting graphics rule for `.eps'}% -\fi -\@namedef{Gin@rule@.eps}#1{{pdf}{.pdf}{`\ETE@epstopdf{#1}}} +\epstopdfDeclareGraphicsRule{.eps}{pdf}{.pdf}{% + \ETE@epstopdf{#1}% +} \def\ETE@epstopdf#1{% epstopdf % - \ifx\OutputDirectory\@empty - \else + \ifcase\ifx\OutputDirectory\@empty + \ifx\ETE@suffix\@empty + 1% + \fi + \fi + 0 % --outfile=\OutputFile\space \fi #1% @@ -778,12 +1115,13 @@ and the derived files % \end{macrocode} % % \begin{macrocode} +\InputIfFileExists{epstopdf-sys.cfg}{}{} \InputIfFileExists{epstopdf.cfg}{}{} % \end{macrocode} % % \begin{macrocode} \ETE@AtEnd -%</package> +%</base> % \end{macrocode} % % \section{Test} @@ -946,6 +1284,7 @@ and the derived files % \def\t{^^A % \begin{tabular}{@{}>{\ttfamily}l@{ $\rightarrow$ }>{\ttfamily}l@{}} % epstopdf.sty & tex/latex/oberdiek/epstopdf.sty\\ +% epstopdf-base.sty & tex/latex/oberdiek/epstopdf-base.sty\\ % epstopdf.pdf & doc/latex/oberdiek/epstopdf.pdf\\ % test/epstopdf-test1.tex & doc/latex/oberdiek/test/epstopdf-test1.tex\\ % epstopdf.dtx & source/latex/oberdiek/epstopdf.dtx\\ @@ -1123,6 +1462,43 @@ and the derived files % \item % Warning message for missing \xfile{pdftex.def} changed. % \end{Version} +% \begin{Version}{2009/07/06 v1.9} +% \item +% Option \xoption{suffix} added. +% \end{Version} +% \begin{Version}{2009/07/07 v1.10} +% \item +% \cs{SourceExt} added. +% \item +% If option \xoption{suffix} is set, the inclusion of +% an image without the suffix namespace is preferred over generating the +% the image within the suffix namespace. +% \end{Version} +% \begin{Version}{2009/07/12 v2.0} +% \item +% New default settings. +% \item +% Package is split into \xpackage{epstopdf} that only takes package +% options and loads \xpackage{epstopdf-base} that does the work. +% \item +% \cs{epstopdfDeclareGraphicsRule} and \cs{epstopdfcall} added. +% \item +% \xfile{epstopdf-sys.cfg} is loaded before \xfile{epstopdf.cfg} +% if \xfile{epstopdf-sys.cfg} exists. +% \end{Version} +% \begin{Version}{2009/07/15 v2.1} +% \item +% Default setting: \xoption{verbose} is now turned on as the +% documentation for v2.0 said. +% \item +% Documentation fixes. +% \end{Version} +% \begin{Version}{2009/07/16 v2.2} +% \item +% Fixed redefined \cs{Gin@setfile}. +% \item +% Documentation extended for package options. +% \end{Version} % \end{History} % % \PrintIndex |