Move a tag
[latex2e.git] / latex2e-20151001 / required / graphics / epsfig.dtx
blob599662f0b99c67c96ef4cabd69828f99b95a5f98
2 % \iffalse
4 %% epsfig.dtx Copyright (C) 1994-1996 1999 Sebastian Rahtz
5 %%            Copyright (C) 2000--2015 David Carlisle, LaTeX3 Project
6 %%
7 %% This file is part of the Standard LaTeX `Graphics Bundle'.
8 %% It may be distributed under the terms of the LaTeX Project Public
9 %% License, as described in lppl.txt in the base LaTeX distribution.
10 %% Either version 1.3 or, at your option, any later version.
12 %<*dtx>
13           \ProvidesFile{epsfig.dtx}
14 %</dtx>
15 %<package>\NeedsTeXFormat{LaTeX2e}[1994/06/01]
16 %<package>\ProvidesPackage{epsfig}
17 %<driver> \ProvidesFile{epsfig.drv}
18 % \fi
19 %         \ProvidesFile{epsfig.dtx}
20                   [1999/02/16 v1.7a (e)psfig emulation (SPQR)]
22 % \iffalse
23 %<*driver>
24 \documentclass{ltxdoc}
25 \begin{document}
26  \DocInput{epsfig.dtx}
27 \end{document}
28 %</driver>
29 % \fi
31 % \GetFileInfo{epsfig.dtx}
33 % \title{The \textsf{epsfig} package\thanks{This file
34 %        has version number \fileversion, last
35 %        revised \filedate.}}
36 % \author{Sebastian Rahtz\\spqr@ftp.tex.ac.uk}
37 % \date{\filedate}
38 % \MaintainedByLaTeXTeam{graphics}
39 % \maketitle
41 % \CheckSum{176}
43 % \StopEventually{}
45 % \section{Preface}
46 %    \begin{macrocode}
47 %<*package>
48 \DeclareOption*{\PassOptionsToPackage{\CurrentOption}{graphicx}}
49 \ProcessOptions
50 \RequirePackage{graphicx}
51 %    \end{macrocode}
52 % \subsection{Emulation of `psfig' syntax}
53 % Emulate "epsfig.sty", and most varieties of psfig
54 % \begin{macro}{\psfig,\epsfig}
55 %    \begin{macrocode}
56 \def\psfig#1{%
57  \let\Gin@ewidth\Gin@exclamation\let\Gin@eheight\Gin@ewidth
58  \def\Gin@req@sizes{%
59    \def\Gin@scalex{1}\let\Gin@scaley\Gin@exclamation
60    \Gin@req@height\Gin@nat@height
61    \Gin@req@width\Gin@nat@width}%
62    \begingroup
63     \let\Gfigname\relax
64     \@tempswafalse
65     \toks@{\Ginclude@graphics{\Gfigname}}%
66     \setkeys{Gin}{#1}%
67     \Gin@esetsize
68     \ifx\Gfigname\relax\ErrorNoFile\else
69       \the\toks@
70     \fi
71   \endgroup}
72 \define@key{Gin}{figure}{\def\Gfigname{#1}}
73 \define@key{Gin}{file}{\def\Gfigname{#1}}
74 \define@key{Gin}{prolog}{\typeout{epsfig: header files are not needed}}
75 \define@key{Gin}{silent}[]{}
76 \def\psdraft{\Gin@drafttrue}
77 \def\psfull{\Gin@draftfalse}
78 \def\pssilent{\typeout{epsfig option `silent' ignored}}
79 \def\psnoisy{\typeout{epsfig option `noisy' ignored}}
80 \let\epsfig\psfig
81 \def\psfigdriver#1{\makeatletter\input{#1.def}\makeatother}
82 %    \end{macrocode}
83 % \end{macro}
84 % \subsection{Emulation of `epsf' syntax}
85 % Emulate Rokicki's "epsf.tex" supplied with the ever-popular dvips.
86 % \begin{macro}{\epsfbox,\epsffile}
87 %    \begin{macrocode}
88 \newdimen\epsfxsize
89 \newdimen\epsfysize
90 \epsfysize\z@
91 \epsfxsize\z@
92 \def\epsfsize#1#2{\epsfxsize}
93 \def\epsfbox{%
94  \@ifnextchar[%
95   {\Gin@bboxtrue\epsf@bb@box}%
96   {\Gin@bboxfalse\epsf@box}%
98 \def\epsf@bb@box[#1#2]{%
99   \expandafter\Gread@parse@bb#1#2 \\
100   \epsf@box}
101 \def\epsf@box#1{%
102  \bgroup
103    \def\Gin@req@sizes{%
104         \epsfxsize\epsfsize{\Gin@nat@width}{\Gin@nat@height}%
105         \ifdim\epsfxsize=\z@
106             \ifdim\epsfysize=\z@
107                 \Gin@req@height\Gin@nat@height
108                 \Gin@req@width\Gin@nat@width
109             \else
110                 \let\Gin@scalex\Gin@exclamation
111                 \Gin@req@height\epsfysize
112                 \Gscale@div\Gin@scaley\Gin@req@height\Gin@nat@height
113                 \Gin@req@width\Gin@scaley\Gin@nat@width
114             \fi
115         \else
116             \Gin@req@width\epsfxsize
117             \Gscale@div\Gin@scalex\Gin@req@width\Gin@nat@width
118             \ifdim\epsfysize=\z@
119                 \let\Gin@scaley\Gin@exclamation
120                 \Gin@req@height\Gin@scalex\Gin@nat@height
121             \else
122                 \Gin@req@height\epsfysize
123                 \Gscale@div\Gin@scaley\Gin@req@height\Gin@nat@height
124             \fi
125         \fi
126       }%
127  \Ginclude@graphics{#1}%
128  \egroup
129  \epsfysize\z@
130  \epsfxsize\z@
132 \let\epsffile\epsfbox
133 \def\epsfclipon{\Gin@cliptrue}
134 \def\epsfclipoff{\Gin@clipfalse}
135 \def\epsfverbosetrue{\typeout{epsf verbose option ignored}}
136 \def\epsfverbosefalse{\typeout{epsf verbose option ignored}}
137 %</package>
138 %    \end{macrocode}
139 % \end{macro}
141 % \Finale