% % \iffalse % %% drivers.dtx Copyright (C) 1994 David Carlisle Sebastian Rahtz % %\ProvidesFile{dvips.def} %\ProvidesFile{oztex.def} %\ProvidesFile{textures.def} %\ProvidesFile{dvitps.def} %\ProvidesFile{dvialw.def} %\ProvidesFile{emtex.def} %\ProvidesFile{dvilaser.def} %\ProvidesFile{psprint.def} %\ProvidesFile{dvipsone.def} %\ProvidesFile{dviwindo.def} %\ProvidesFile{dvitops.def} %\ProvidesFile{dvi2ps.def} %\ProvidesFile{pubps.def} %\ProvidesFile{dviwin.def} %\ProvidesFile{xdvi.def} %\ProvidesFile{dvitops.def} % %<*driver> \NeedsTeXFormat{LaTeX2e} \ProvidesFile{drivers.dtx} % [1994/06/08 v1.6 Driver-dependant file (DPC,SPQR)] % %<*driver> \documentclass{ltxdoc} \GetFileInfo{drivers.dtx} \begin{document} \DeleteShortVerb{\|} \MakeShortVerb{\"} \title{Graphics drivers for \LaTeXe\thanks {Version \fileversion, revised \filedate}} \author{Sebastian Rahtz and David Carlisle} \date{\filedate} \maketitle \DocInput{drivers.dtx} \end{document} % % \fi % % \section{Driver files} % % \def\A{$\bullet$} % \def\B{$\circ$} % \def\C{$?$} % \def\D{$\times$} % \def\nstack#1{\shortstack{^^A % \vrule height \ht\strutbox width 0pt#1^^A % \vrule depth \dp\strutbox width 0pt}} % % \begin{tabular}[b]{|*{2}{l|}*{4}{c|}} % \hline % \em Name &\em OS & % \nstack{g\\r\\a\\p\\h\\i\\c\\s}% % \nstack{i\\n\\c\\l\\s\\i\\o\\n}& % \nstack{r\\o\\t\\a\\t\\i\\o\\n}& % \nstack{s\\c\\a\\l\\i\\n\\g}& % \nstack{c\\o\\l\\o\\u\\r}\\ % \hline % dvi2ps & Unix & \B&? &? &? \\ % dvialw & Unix & \B&? &? &? \\ % dvilaser & DOS & \B &? &? &? \\ % dvips & Unix, DOS etc &\A &\A &\A &\A \\ % dvipsone & DOS &\A &\A &\A &\A \\ % dvitops & Unix, DOS etc &\A &? &? &? \\ % dvitps & Unix & ?&? &? &? \\ % dviwin & Windows &\A &\D&\D&\D \\ % dviwindo & Windows &\A &\D &\D &\A \\ % emtex & DOS &\A &\D &\D &\D \\ % oztex & Mac &\A &\D &\D &\D \\ % psprint & VMS &\B &? &? &? \\ % pubps & Unix &\B &? &? &? \\ % textures & Mac &\A &\A &? &\A \\ % \hline % \end{tabular} % \hspace{\fill} % \begin{minipage}[b]{1.5in}\raggedright % \textbf{Notes} % \begin{description} % \item[\A] Available and tested % \item[\B] Code written but not tested % \item[\C] May be possible to write code % \item[\D] Almost certainly impossible to implement % \end{description} % \end{minipage} % % \section{dvips} % A \LaTeXe\ graphics driver file for Tom Rokicki's \emph{dvips} % driver; tested with version 5.518 of July 1993. Note that % the rotation angle has to be negated. % \begin{macrocode} %<*dvips> \expandafter\ifx\csname ver@dvips.def\endcsname\relax\endinput\fi % \end{macrocode} % \subsection{Colour} % \begin{macrocode} \def\set@color{% \special{color push \current@color}\aftergroup\reset@color} \def\reset@color{\special{color pop}} \def\set@page@color{\special{background \current@color}} \def\color@named#1{% \expandafter\ifx\csname col@#1\endcsname\color@check \color@named@{#1}% \else \UndefinedColor \fi} \def\color@check{\color@check} \let\col@GreenYellow\color@check \let\col@Yellow\color@check \let\col@Goldenrod\color@check \let\col@Dandelion\color@check \let\col@Apricot\color@check \let\col@Peach\color@check \let\col@Melon\color@check \let\col@YellowOrange\color@check \let\col@Orange\color@check \let\col@BurntOrange\color@check \let\col@Bittersweet\color@check \let\col@RedOrange\color@check \let\col@Mahogany\color@check \let\col@Maroon\color@check \let\col@BrickRed\color@check \let\col@Red\color@check \let\col@OrangeRed\color@check \let\col@RubineRed\color@check \let\col@WildStrawberry\color@check \let\col@Salmon\color@check \let\col@CarnationPink\color@check \let\col@Magenta\color@check \let\col@VioletRed\color@check \let\col@Rhodamine\color@check \let\col@Mulberry\color@check \let\col@RedViolet\color@check \let\col@Fuchsia\color@check \let\col@Lavender\color@check \let\col@Thistle\color@check \let\col@Orchid\color@check \let\col@DarkOrchid\color@check \let\col@Purple\color@check \let\col@Plum\color@check \let\col@Violet\color@check \let\col@RoyalPurple\color@check \let\col@BlueViolet\color@check \let\col@Periwinkle\color@check \let\col@CadetBlue\color@check \let\col@CornflowerBlue\color@check \let\col@MidnightBlue\color@check \let\col@NavyBlue\color@check \let\col@RoyalBlue\color@check \let\col@Blue\color@check \let\col@Cerulean\color@check \let\col@Cyan\color@check \let\col@ProcessBlue\color@check \let\col@SkyBlue\color@check \let\col@Turquoise\color@check \let\col@TealBlue\color@check \let\col@Aquamarine\color@check \let\col@BlueGreen\color@check \let\col@Emerald\color@check \let\col@JungleGreen\color@check \let\col@SeaGreen\color@check \let\col@Green\color@check \let\col@ForestGreen\color@check \let\col@PineGreen\color@check \let\col@LimeGreen\color@check \let\col@YellowGreen\color@check \let\col@SpringGreen\color@check \let\col@OliveGreen\color@check \let\col@RawSienna\color@check \let\col@Sepia\color@check \let\col@Brown\color@check \let\col@Tan\color@check \let\col@Gray\color@check \let\col@Black\color@check \let\col@White\color@check \def\color@@#1{% \def\current@color{#1}% \set@color} \def\color@named@#1{% \def\current@ps@color{/TeXDict begin #1 end}% \color@@{#1}} \def\color@gray#1{% \color@arg{#1}% \color@gray@{#1}} \def\color@gray@#1{% \def\current@ps@color{#1 setgray}% \color@@{gray #1}} \def\color@rgb@#1{% \def\current@ps@color{#1 setrgbcolor}% \color@@{rgb #1}} \def\color@cmyk@#1{% \def\current@ps@color{#1 setcmycolor}% \color@@{cmyk #1}} \def\definecolor@named#1#2{% \expandafter\ifx\csname col@#2\endcsname\color@check \expandafter\def\csname\string\color @#1\endcsname{% \color@named@{#2}}% \else \UndefinedColor \fi} \def\current@color{Black} % \end{macrocode} % \subsection{File inclusion} % \begin{macro}{\Ginclude@eps} % "#1" input file (or command) % \begin{macrocode} \def\Ginclude@eps#1{% \message{<#1>}% \bgroup % \end{macrocode} % \emph{dvips} likes to work with its own pixel resolution, so % mangle the sizes slightly. % \begin{macrocode} \def\@tempa{!}% \dimen@=10\Gin@req@width \dimen@ii1bp% \divide\dimen@\dimen@ii \@tempdima=10\Gin@req@height \divide\@tempdima\dimen@ii \special{PSfile="#1"\space llx=\strip@pt\Gin@llx\space lly=\strip@pt\Gin@lly\space urx=\strip@pt\Gin@urx\space ury=\strip@pt\Gin@ury\space \ifx\Gin@scalex\@tempa\else rwi=\number\dimen@\space\fi \ifx\Gin@scaley\@tempa\else rhi=\number\@tempdima\space\fi \ifGin@clip clip\fi}% \egroup} % \end{macrocode} % \end{macro} % % \begin{macro}{\Ginclude@bmp} % "#1" input file; if zero size is requested, the graphic will % come at `natural' size. % \begin{macrocode} \def\Ginclude@bmp#1{% \message{<#1>}% \dimen@\Gin@req@height \advance\dimen@ by-\Gin@lly \kern-\Gin@llx\raise\Gin@req@height\hbox{% \ifdim\Gin@urx=\z@ \ifdim\Gin@ury=\z@ \special{em: graph #1}% \else \special{em: graph #1,\the\Gin@urx}% \fi \else \special{em: graph #1,\the\Gin@urx,\the\Gin@ury}% \fi }% } % \end{macrocode} % \end{macro} % \subsection{Rotation} % \begin{macrocode} \def\Grot@start{% \special{ps: gsave currentpoint currentpoint translate \Grot@angle\space neg rotate neg exch neg exch translate}} \def\Grot@end{\special{ps: currentpoint grestore moveto}} % \end{macrocode} % \subsection{Scaling} % \begin{macrocode} \def\Gscale@start{\special{ps: currentpoint currentpoint translate \Gscale@x\space \Gscale@y\space scale neg exch neg exch translate}} \def\Gscale@end{\special{ps: currentpoint currentpoint translate 1 \Gscale@x\space div 1 \Gscale@y\space div scale neg exch neg exch translate}} % % \end{macrocode} % \section{OzTeX} % A \LaTeXe\ graphics driver file for OzTeX (versions 1.42 and later), % by Andrew Trevorrow. % \begin{macrocode} %<*oztex> \expandafter\ifx\csname ver@oztex.def\endcsname\relax\endinput\fi % \end{macrocode} %\subsection{Graphics inclusion} % \begin{macrocode} \def\Ginclude@eps{\Oztex@Include{epsf}} \def\Ginclude@pntg{\Oztex@Include{pntg}} \def\Ginclude@pict{\Oztex@Include{pict}} \def\Oztex@Include#1#2{% \ifGin@clip \typeout{No clipping support in OzTeX}% \fi \divide\Gin@req@width by 65781% convert sp to bp \divide\Gin@req@height by 65781% \special{#1=#2\space width=\number\Gin@req@width \space height=\number\Gin@req@height }% } % % \end{macrocode} %\section{Textures} % A \LaTeXe\ graphics driver file for Blue Sky's Textures % \begin{macrocode} %<*textures> \expandafter\ifx\csname ver@textures.def\endcsname\relax\endinput\fi % \end{macrocode} % \subsection{Graphics inclusion} % \begin{macrocode} \def\Ginclude@eps{\Textures@Include{illustration}} \def\Ginclude@pict{\Textures@Include{pictfile}} \def\Textures@Include#1#2{% \def\@tempa{!}% \ifx\Gin@scaley\@tempa \let\Gin@scaley\Gin@scalex \else \ifx\Gin@scalex\@tempa\let\Gin@scalex\Gin@scaley\fi \fi \setlength\@tempdima{\Gin@scalex pt}% \setlength\@tempdimb{\Gin@scaley pt}% \ifdim\@tempdima>\@tempdimb \let\Gin@scalex\Gin@scaley \fi \ifGin@clip \typeout{no clipping support in TeXtures}% \fi \special{#1 #2\space scaled \Gin@scalex}% } % \end{macrocode} % \subsection{Rotation} % This code was written when no unprotected postscript code was allowed; % it could almost certainly be rewritten now with `rawpostscript'. % \begin{macrocode} \def\Grot@start{\special{postscript 0 0 transform grestore matrix currentmatrix 3 1 roll itransform dup 3 -1 roll dup 4 1 roll exch translate \Grot@angle\space rotate neg exch neg exch translate gsave}} \def\Grot@end{\special{postscript grestore setmatrix gsave}} % \end{macrocode} % \subsection{Colour} % This will only work for versions 1.6 and later. % \begin{macrocode} \def\Raw@PS#1{\special{rawpostscript #1}} % % \end{macrocode} % \section{dvitps} % A \LaTeXe\ graphics driver file for dvitps, by Stephan v % Bechtolsheim % \begin{macrocode} %<*dvitps> \expandafter\ifx\csname ver@dvitps.def\endcsname\relax\endinput\fi % \end{macrocode} % \begin{macrocode} \typeout{WARNING: dvitps driver is not yet supported!!}% % % \end{macrocode} % \section{dvialw} % A \LaTeXe\ graphics driver file for dvialw, by Nelson Beebe % \begin{macrocode} %<*dvialw> \expandafter\ifx\csname ver@dvialw.def\endcsname\relax\endinput\fi % \end{macrocode} % \subsection{Rotation} % \begin{macrocode} \def\Ginclude@eps#1{% \def\@tempa{!}% \ifx\Gin@scaley\@tempa \let\Gin@scaley\Gin@scalex \else \ifx\Gin@scalex\@tempa\let\Gin@scalex\Gin@scaley\fi \fi \ifGin@clip \typeout{no clipping support in dvialw}% \fi \special{language "PS", literal "\Gin@scalex\space \Gin@scaley\space scale", position = "bottom left", include "#1\space"}% } % % \end{macrocode} % \section{emtex} % A \LaTeXe\ graphics driver file for Eberhard Mattes' emTeX % \begin{macrocode} %<*emtex> \expandafter\ifx\csname ver@emtex.def\endcsname\relax\endinput\fi % \end{macrocode} % \subsection{Graphics file inclusion} % \begin{macrocode} \def\Ginclude@bmp#1{% \raise\Gin@req@height\hbox{\special{em:graph #1}}% \typeout{WARNING: emtex does not permit graphics to be scaled}% } % % \end{macrocode} % \section{dvilaser/ps} % A \LaTeXe\ graphics driver file for Arbortext's dvilaser/ps % \begin{macrocode} %<*dvilaser> \expandafter\ifx\csname ver@dvilaser.def\endcsname\relax\endinput\fi % \end{macrocode} %\subsection{Graphic file inclusion} % \begin{macrocode} \def\Ginclude@eps#1{% \ifGin@clip \typeout{no clipping support in dvilaser/ps}% \fi \special{ps: epsfile #1\space \the\Gin@req@width}% } % % \end{macrocode} % \section{psprint} % A \LaTeXe\ graphics driver file for Trevorrow's psprint % \begin{macrocode} %<*psprint> \expandafter\ifx\csname ver@psprint.def\endcsname\relax\endinput\fi % \end{macrocode} %\section{Graphic file inclusion} % \begin{macrocode} \def\Ginclude@eps#1{% \def\@tempa{!}% \ifx\Gin@scaley\@tempa \let\Gin@scaley\Gin@scalex \else \ifx\Gin@scalex\@tempa\let\Gin@scalex\Gin@scaley\fi \fi \ifGin@clip \typeout{no clipping support in psprint}% \fi \special{#1\space \Gin@scalex\space \Gin@scaley\space scale \TG@rem@pt\Gin@llx\space neg \TG@rem@pt\Gin@lly \space neg translate }% } % % \end{macrocode} % \section{dvipsone} % A \LaTeXe\ graphics driver file for Y\&Y's dvipsone % \begin{macrocode} %<*dvipsone> \expandafter\ifx\csname ver@dvipsone.def\endcsname\relax\endinput\fi % \end{macrocode} % \section{Graphic file inclusion} % \begin{macrocode} \def\Ginclude@eps#1{% \message{<#1>}% \raise\Gin@req@height\hbox{% \special{ps::[begin] \number\Gin@req@width\space \number\Gin@req@height\space \number\Gin@llx\space \number\Gin@lly\space \number\Gin@urx\space \number\Gin@ury\space startTexFig}% \special{ps: plotfile #1}% \ifGin@clip\special{ps:: doclip}\fi \special{ps::[end] endTexFig}% }% } \def\Ginclude@tiff#1{% \message{<#1>}% \special{insertimage: #1 \number\Gin@req@width\space \number\Gin@req@height}% } \def\Raw@PS#1{\special{ps: #1}} \def\Grot@start{% \special{ps: gsave currentpoint currentpoint translate \Grot@angle\space rotate neg exch neg exch translate}} \def\Grot@end{\special{ps: currentpoint grestore moveto}} \def\Gscale@start{\special{ps: currentpoint currentpoint translate \Gscale@x\space \Gscale@y\space scale neg exch neg exch translate}} \def\Gscale@end{\special{ps: currentpoint currentpoint translate 1 \Gscale@x\space div 1 \Gscale@y\space div scale neg exch neg exch translate}} % % \end{macrocode} % \section{dviwindo} % A \LaTeXe\ graphics driver file for Y\&Y's dviwindo % \begin{macrocode} %<*dviwindo> \expandafter\ifx\csname ver@dviwindo.def\endcsname\relax\endinput\fi % \end{macrocode} % \subsection{Graphic file inclusion} % \begin{macrocode} \def\Ginclude@eps#1{% \message{<#1>}% \raise\Gin@req@height\hbox{% \special{ps::[begin] \number\Gin@req@width\space \number\Gin@req@height\space \number\Gin@llx\space \number\Gin@lly\space \number\Gin@urx\space \number\Gin@ury\space startTexFig}% \special{ps: plotfile #1}% \ifGin@clip\special{ps:: doclip}\fi \special{ps::[end] endTexFig}% }% } \def\Ginclude@tiff#1{% \message{<#1>}% \special{insertimage: #1 \number\Gin@req@width\space \number\Gin@req@height}% } \def\set@color{% \special{textcolor: \current@color}% \special{rulecolor: \current@color}% \aftergroup\reset@color } \def\reset@color{% \special{textcolor: \current@color}% \special{rulecolor: \current@color}% } \def\set@page@color{% \write\sixt@@n{background color ignored: \current@color}} \def\color@RGB#1{\color@RGB@#1\@@} \def\color@RGB@#1,#2,#3\@@{% \edef\current@color{#1 #2 #3}% \set@color} \def\color@rgb@RGB#1{% \dimen@#1\p@ \dimen@255\dimen@ \@settopoint\dimen@ \edef\@tempa{\@tempa,\strip@pt\dimen@}} \def\color@rgb#1{\color@rgb@#1\@@} \def\color@rgb@#1,#2,#3\@@{% \def\a{#1,#2,#3} \let\@tempa\@gobble \color@rgb@RGB{#1}% \color@rgb@RGB{#2}% \color@rgb@RGB{#3}% \expandafter\color@RGB\expandafter{\@tempa}} \def\cmyk@rgb#1{% \dimen@#1\p@ \advance\dimen@\@tempdima \ifdim\dimen@>\p@ \dimen@\z@ \else \advance\dimen@-\p@ \dimen@-\dimen@ \fi \edef\@tempa{\@tempa,\strip@pt\dimen@}} \def\color@cmyk#1{\color@cmyk@#1\@@} \def\color@cmyk@#1,#2,#3,#4\@@{% \@tempdima#4\p@ \let\@tempa\@gobble \cmyk@rgb{#1}% \cmyk@rgb{#2}% \cmyk@rgb{#3}% \expandafter\color@rgb\expandafter{\@tempa}} \def\definecolor@gray#1#2{% \expandafter\def\csname\string\color @#1\endcsname{\color@gray{#2}}} \def\definecolor@RGB#1#2{% \expandafter\def\csname\string\color @#1\endcsname{\color@RGB{#2}}} \def\definecolor@rgb#1#2{% \expandafter\def\csname\string\color @#1\endcsname{\color@rgb{#2}}} \def\definecolor@cmyk#1#2{% \definecolor@cmyk@{#1}#2\@@} \def\definecolor@cmyk@#1#2,#3,#4,#5\@@{% \@tempdima#5\p@ \let\@tempa\@gobble \cmyk@rgb{#2}% \cmyk@rgb{#3}% \cmyk@rgb{#4}% \edef\@tempa{\noexpand\definecolor@rgb{#1}{\@tempa}}% \@tempa} \def\current@color{0 0 0 } % % \end{macrocode} % \section{dvitops} % A \LaTeXe\ graphics driver file for James Clark's dvitops % \begin{macrocode} %<*dvitops> \expandafter\ifx\csname ver@dvitops.def\endcsname\relax\endinput\fi % \end{macrocode} % \subsection{Rotation} % \begin{macrocode} \newcount\Grot@count \Grot@count=\@ne \def\Grot@start{\special{dvitops: origin rot\the\@tempdima}% \special{dvitops: begin rot\the\Grot@count}}% \def\Grot@end{\special{dvitops: end}% \special{dvitops: rotate rot\the\Grot@count \space \Grot@angle}% \global\advance\Grot@count by\@ne}% % \end{macrocode} % \subsection{Graphic file inclusion} % \begin{macrocode} \def\Ginclude@eps#1{% \multiply\Gin@req@width by \@m \multiply\Gin@req@height by \@m \ifGin@clip \typeout{no clipping support in dvitops}% \fi \special{import #1\space \Gin@req@width\space \the\Gin@req@height\space fill}% } % \end{macrocode} % %\section{dvi2ps} % A \LaTeXe\ graphics driver file for original dvi2ps % \begin{macrocode} %<*dvi2ps> \expandafter\ifx\csname ver@dvi2ps.def\endcsname\relax\endinput\fi % \end{macrocode} % \subsection{Graphic file inclusion} % \begin{macrocode} \def\Ginclude@eps#1{% \def\@tempa{!}% \ifx\Gin@scaley\@tempa \let\Gin@scaley\Gin@scalex \else \ifx\Gin@scalex\@tempa\let\Gin@scalex\Gin@scaley\fi \fi \ifGin@clip \typeout{no clipping support in dvi2ps}% \fi \special{psfile=#1\space hscale=\Gin@scalex\space 1000 mul vscale=\Gin@scaley\space 1000 mul}% } % % \end{macrocode} % \section{pubps} % A \LaTeXe\ graphics driver file for Arbortext's PUBps; % information from Peter R Wilson % \begin{macrocode} %<*pubps> \expandafter\ifx\csname ver@pubps.def\endcsname\relax\endinput\fi % \end{macrocode} % \subsection{Rotation} % \begin{macrocode} \def\Grot@start{\special{ps: gsave currentpoint currentpoint translate \Grot@angle\space rotate neg exch neg exch translate}} \def\Grot@end{\special{ps: currentpoint grestore moveto}} % \end{macrocode} % % A \LaTeXe\ graphics driver file for Hippocrates Sendoukas' dviwin % \begin{macrocode} %<*dviwin> \expandafter\ifx\csname ver@dviwin.def\endcsname\relax\endinput\fi \@namedef{Gin@rule@wmf}#1{{bmp}{}{#1}} \def\Ginclude@bmp#1{% \raise\Gin@req@height\hbox{% \special{anisoscale #1, \the\Gin@req@width\space \the\Gin@req@height}% }} % \end{macrocode}% % % \begin{macrocode} % %<*pscolor> \def\color@arg#1{% \dimen@#1\p@ \ifdim\dimen@<\z@\out@of@range \else\ifdim\dimen@>\p@\out@of@range \fi\fi} \def\color@rgb#1{\color@@rgb#1\@@} \def\color@@rgb#1,#2,#3\@@{% \color@arg{#1}% \color@arg{#2}% \color@arg{#3}% \color@rgb@{ #1 #2 #3}} \def\color@cmyk#1{\color@@cmyk#1\@@} \def\color@@cmyk#1,#2,#3,#4\@@{% \color@arg{#1}% \color@arg{#2}% \color@arg{#3}% \color@arg{#4}% \color@cmyk@{#1 #2 #3 #4}} \def\definecolor@gray#1#2{% \color@arg{#2}% \expandafter\def\csname\string\color @#1\endcsname{% \color@gray@{#2}}} \def\definecolor@rgb#1#2{\definecolor@rgb@{#1}#2\@@} \def\definecolor@rgb@#1#2,#3,#4\@@{% \color@arg{#2}% \color@arg{#3}% \color@arg{#4}% \expandafter\def\csname\string\color @#1\endcsname{% \color@rgb@{#2 #3 #4}}} \def\definecolor@cmyk#1#2{\definecolor@cmyk@{#1}#2\@@} \def\definecolor@cmyk@#1#2,#3,#4,#5\@@{% \color@arg{#2}% \color@arg{#3}% \color@arg{#4}% \color@arg{#5}% \expandafter\def\csname\string\color @#1\endcsname{% \color@cmyk@{#2 #3 #4 #5}}} % %<*pscolorsimple> \def\current@ps@color{\current@color} \def\set@color{% \Raw@PS{\current@color}\aftergroup\reset@color} \def\reset@color{\Raw@PS{\current@color}} \def\set@page@color{% \write\sixt@@n{background color ignored: \current@color}} \def\color@named#1{% \edef\@tempa{\noexpand\color@rgb{\csname named@#1\endcsname}}% \@tempa} \def\color@cmyk@#1{% \edef\current@color{#1 setcmykcolor}% \set@color} \def\color@rgb@#1{% \edef\current@color{#1 setrgbcolor}% \set@color} \def\named@Black{0,0,0} \def\named@White{1,1,1} \def\named@Red {1,0,0} \def\named@Green{0,1,0} \def\named@Blue {0,0,1} \def\color@gray#1{% \edef\current@color{#1 setgray}% \set@color} \def\definecolor@named#1#2{% \@ifundefined{named@#1}{\typeout{WARNING cannot define colour #1}}{% \expandafter\def\csname\string\color @#1\endcsname{\color@named{#2}}}% } \def\current@color{0 setgray} % %<*colfix> \let\@ldc@l@r\color \def\color{\if@inlabel\leavevmode\fi\@ldc@l@r}% \let\@ldtextc@l@r\textcolor \def\textcolor{\if@inlabel\leavevmode\fi\@ldtextc@l@r}% \let\@lduseb@x\usebox \def\usebox#1{\@lduseb@x{#1}\set@color} % %<*psrules> \def\Gin@extensions{eps,ps} \def\Gin@sepdefault{.}% \@namedef{Gin@rule@ps}#1{{eps}{ps}{#1}} \@namedef{Gin@rule@eps}#1{{eps}{eps}{#1}} % %<*psrulesZ> \def\Gin@extensions{eps,ps,eps.gz,ps.gz,eps.Z} \def\Gin@sepdefault{.}% \@namedef{Gin@rule@ps}#1{{eps}{ps}{#1}} \@namedef{Gin@rule@eps}#1{{eps}{eps}{#1}} \@namedef{Gin@rule@pz}#1{{eps}{bb}{`gunzip -c #1}} \@namedef{Gin@rule@eps.Z}#1{{eps}{eps.bb}{`gunzip -c #1}} \@namedef{Gin@rule@ps.Z}#1{{eps}{ps.bb}{`gunzip -c #1}} \@namedef{Gin@rule@ps.gz}#1{{eps}{ps.bb}{`gunzip -c #1}} \@namedef{Gin@rule@eps.gz}#1{{eps}{eps.bb}{`gunzip -c #1}} % %<*dosrules> %\def\Gin@extensions{eps,ps,pcx,bmp} %\def\Gin@sepdefault{.}% \@namedef{Gin@rule@pcx}#1{{bmp}{}{#1}} \@namedef{Gin@rule@bmp}#1{{bmp}{}{#1}} \@namedef{Gin@rule@msp}#1{{bmp}{}{#1}} % %<*macrules> \def\Gin@extensions{{},eps} \def\Gin@sepdefault{.} \@namedef{Gin@rule@ps}#1{{eps}{ps}{#1}} \@namedef{Gin@rule@eps}#1{{eps}{eps}{#1}} \@namedef{Gin@rule@pict}#1{{pict}{}{#1}} \@namedef{Gin@rule@pntg}#1{{pntg}{}{#1}} \@namedef{Gin@rule@}#1{{pict}{\relax}{#1}} % %<*tiffrules> \@namedef{Gin@rule@tif}#1{{tiff}{}{#1}} % % \end{macrocode} \endinput %