%%
%% This is file `textures.def',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% textures.dtx (with options: `copyright')
%% AI3_Crops.dtx (with options: `copyright')
%% portable.dtx (with options: `copyright')
%% textures.dtx (with options: `banner,Textures')
%% AI3_Crops.dtx (with options: `graphicsRepairs,AI3Crops')
%% portable.dtx (with options: `Textures,supportsEPS,AlwaysReadFile,color2')
%% textures.dtx (with options: `TexturesRules,')
%%
%% IMPORTANT NOTICE:
%%
%% For the copyright see the source file.
%%
%% You are *not* allowed to modify this file.
%%
%% You are *not* allowed to distribute this file.
%% For distribution of the original source see the terms
%% for copying and modification in the file textures.dtx AI3_Crops.dtx portable.dtx textures.dtx AI3_Crops.dtx portable.dtx textures.dtx.
%%
%% Textures.dtx Portions copyright (C) 1994, 1995, 1996, 1997 Arthur Ogawa ([email protected]).
%% {28 May 1997}
%% AI3_Crops.dtx Portions copyright (C) 1994, 1995, 1996, 1997 Arthur Ogawa ([email protected]).
%% {28 May 1997}
%% Portable.dtx Portions copyright (C) 1994, 1995, 1996, 1997 Arthur Ogawa ([email protected]).
%% {28 May 1997}
%% This code may be distributed only as part of
%% the full Blue Sky Research LaTeX distribution or as part of
%% the Standard LaTeX `Graphics Bundle'.
%%
%% It should be distributed *unchanged* and together with all other
%% files in the graphics bundle. The file 00readme.txt contains a list
%% of all of these files.
%%
%% A modified version of this file may be distributed, but it should
%% be distributed with a *different* name. Changed files must be
%% distributed *together with a complete and unchanged* distribution
%% of these files.
%%
\ProvidesFile{textures.def}%
[1997/5/28 v0.3
Graphics extensions for Textures 1.7 and later
(Arthur Ogawa/[email protected])%
]%
\AtBeginDocument\Gin@graphics@alts
\let\Gin@graphics@alts\@empty
\ifx\define@key\undefined\else
\define@key{Gin}{trim}{\Gread@parse@KV#1 \\{TR}}%
\define@key{Gin}{viewport}{\Gread@parse@KV#1 \\{VP}}%
\g@addto@macro\Gin@graphics@alts{%
\def\Gin@eread{\relax}%
\def\Gin@sep{}%
\def\Gin@eext{}%
}%
\fi
\def\Gin@setfile#1#2#3{%
\ifx\\#2\\\Gread@false\fi
\@tempswafalse
\ifGin@bbox\else\@tempswatrue\fi
\if@always@read\@tempswatrue\fi
\if@tempswa
\ifGread@
\csname Gread@%
\expandafter\ifx\csname Gread@#1\endcsname\relax
\Gtype@default
\else
#1%
\fi
\endcsname{\Gin@base#2}%
\else
\@latex@error
{Cannot determine size of graphic in #3 (no size specifed)}%
\@ehc
\fi
\fi
\Gin@viewport@code
\Gin@nat@height\Gin@ury bp%
\advance\Gin@nat@height-\Gin@lly bp%
\Gin@nat@width\Gin@urx bp%
\advance\Gin@nat@width-\Gin@llx bp%
\Gin@req@sizes
\expandafter\ifx\csname Ginclude@#1\endcsname\relax
\Gin@drafttrue
\expandafter\ifx\csname Gread@#1\endcsname\relax
\@latex@error{Can not include graphics of type: #1}\@ehc
\global\expandafter\let\csname Gread@#1\endcsname\@empty
\fi
\fi
\leavevmode
\ifGin@draft
\hbox to \Gin@req@width{%
\vrule\hss
\vbox to \Gin@req@height{%
\hrule \@width \Gin@req@width
\vss
\edef\@tempa{#3}%
\rlap{ \ttfamily\expandafter\strip@prefix\meaning\@tempa}%
\vss
\hrule}%
\hss\vrule}%
\else
\@addtofilelist{#3}%
\ProvidesFile{#3}[Graphic file (type #1)]%
\setbox\z@\hbox{\csname Ginclude@#1\endcsname{#3}}%
\dp\z@\z@
\ht\z@\Gin@req@height
\wd\z@\Gin@req@width
\box\z@
\fi}
\newif\if@always@read
\def\Gtype@default{eps}%
\let\@alt@Gin@setfile\Gin@setfile
\g@addto@macro\Gin@graphics@alts{%
\let\Gin@setfile\@alt@Gin@setfile
}%
\chardef\cat@ignore=14
\chardef\cat@linend=5
\def\Gread@EPSF#1{%
\begingroup
\@tempcnta\z@\loop\ifnum\@tempcnta<32\relax
\catcode\@tempcnta\cat@ignore
\advance\@tempcnta\@ne\repeat
\catcode127\cat@ignore
\let\do\@makeother\dospecials\catcode`\ 10\relax
\catcode\endlinechar\cat@linend
\immediate\openin\@inputcheck#1 %
\ifeof\@inputcheck
\@latex@error
{Imported graphic `#1' not found}\@ehc
\else
\Gread@true
\loop\read\@inputcheck to\Gread@string
\ifeof\@inputcheck\Gread@false\else
\expandafter\Gread@find\Gread@string:.\\\Gread@BBox{BB}%
\expandafter\Gread@find\Gread@string:.\\\Gread@AICrop{AI}%
\ifG@AtEnd@\else\ifx\Gread@string\Gread@EndComments\Gread@false
\fi\fi
\fi
% We've seen all. Bail out immediately.
\ifx\BB@llx\@empty\else\ifx\AI@llx\@empty\else\Gread@false\fi\fi
\ifGread@
\repeat
\immediate\closein\@inputcheck
\fi
\edef\@tempa{%
\def\noexpand\BB@llx{\BB@llx}\def\noexpand\BB@lly{\BB@lly}%
\def\noexpand\BB@urx{\BB@urx}\def\noexpand\BB@ury{\BB@ury}%
\def\noexpand\AI@llx{\AI@llx}\def\noexpand\AI@lly{\AI@lly}%
\def\noexpand\AI@urx{\AI@urx}\def\noexpand\AI@ury{\AI@ury}%
}%
\expandafter\endgroup\@tempa
\ifx\BB@llx\@empty
\@latex@error
{Cannot determine BoundingBox of EPS graphic #1.}\@ehc
%help{This file is not compliant with EPS. Fix it.}
\else
\ifGin@bbox\else
\ifx\AI@llx\@empty % Only BB was given
\let\Gin@llx\BB@llx\let\Gin@lly\BB@lly
\let\Gin@urx\BB@urx\let\Gin@ury\BB@ury
\relax
\else % BB and AI were both given
\let\Gin@llx\AI@llx\let\Gin@lly\AI@lly
\let\Gin@urx\AI@urx\let\Gin@ury\AI@ury
\relax
\fi
\fi
\if@SupportsEPS
% Subtle: calculations are performed wholly
% in pt to allow using \strip@onlypt
\dimen@\Gin@llx\p@\advance\dimen@-\BB@llx\p@
\edef\Gin@llx{\strip@onlypt\dimen@}%
\dimen@\Gin@lly\p@\advance\dimen@-\BB@lly\p@
\edef\Gin@lly{\strip@onlypt\dimen@}%
\dimen@\Gin@urx\p@\advance\dimen@-\BB@llx\p@
\edef\Gin@urx{\strip@onlypt\dimen@}%
\dimen@\Gin@ury\p@\advance\dimen@-\BB@lly\p@
\edef\Gin@ury{\strip@onlypt\dimen@}%
\fi
\fi
\dimen@ii\p@\[email protected]\dimen@ii
\ifx\VP@llx\@empty\else
\let\Gin@urx\Gin@llx
\@Gin@addptbp\Gin@llx\VP@llx\@Gin@addptbp\Gin@urx\VP@urx
\let\Gin@ury\Gin@lly
\@Gin@addptbp\Gin@lly\VP@lly\@Gin@addptbp\Gin@ury\VP@ury
\fi
\ifx\TR@llx\@empty\else
\@Gin@addptbp\Gin@llx\TR@llx\@Gin@addptbp\Gin@urx{-\TR@urx}%
\@Gin@addptbp\Gin@lly\TR@lly\@Gin@addptbp\Gin@ury{-\TR@ury}%
\fi
}%
\newif\if@SupportsEPS
\def\@Gin@addptbp#1#2{%
% #1 operand in units of bp; #2 summand in units of pt;
\dimen@#1\p@\advance\dimen@#2\dimen@ii\edef#1{\strip@onlypt\dimen@}%
}%
\def\Gread@minimal#1{%
\ifGin@bbox% signifies that \Gin@llx, etc., have been set
\ifx\VP@llx\@empty\else
\let\Gin@urx\Gin@llx
\@Gin@addptbp\Gin@llx\VP@llx\@Gin@addptbp\Gin@urx\VP@urx
\let\Gin@ury\Gin@lly
\@Gin@addptbp\Gin@lly\VP@lly\@Gin@addptbp\Gin@ury\VP@ury
\fi
\else
\ifx\VP@llx\@empty
\@latex@error{Size of graphic is unknown}\@ehc
%\def\Gin@llx{0}\def\Gin@lly{0}\def\Gin@urx{72}\def\Gin@ury{72}%
\else
\def\Gin@llx{0}\def\Gin@lly{0}%
\let\Gin@urx\Gin@llx
\@Gin@addptbp\Gin@llx\VP@llx\@Gin@addptbp\Gin@urx\VP@urx
\let\Gin@ury\Gin@lly
\@Gin@addptbp\Gin@lly\VP@lly\@Gin@addptbp\Gin@ury\VP@ury
\fi
\fi
\ifx\TR@llx\@empty\else
\@Gin@addptbp\Gin@llx\TR@llx\@Gin@addptbp\Gin@urx{-\TR@urx}%
\@Gin@addptbp\Gin@lly\TR@lly\@Gin@addptbp\Gin@ury{-\TR@ury}%
\fi
}%
\long\def\Gread@find#1:#2#3\\#4#5{%
\def\@tempa{#1}\ifx\@tempa#4\Gread@test@AtEnd#2#3()\\{#5}\fi
}%
\def\Gread@test@AtEnd#1(#2)#3\\#4{%
\def\@tempa{#2}%
\ifx\@tempa\Gread@atend\G@AtEnd@true\else\Gread@parse#1\\{#4}\fi
}%
\newif\ifG@AtEnd@
\def\Gread@parse#1 #2 #3 #4 #5\\#6{%
\Gin@set{#6}{llx}{#1}\Gin@set{#6}{lly}{#2}%
\Gin@set{#6}{urx}{#3}\Gin@set{#6}{ury}{#4}%
}%
\def\Gin@set#1#2#3{\expandafter\def\csname#1@#2\endcsname{#3}}%
\def\Gread@parse@KV#1 #2 #3 #4 #5\\#6{%
\Gread@parse@cs{#1}{#6}{llx}\Gread@parse@cs{#2}{#6}{lly}%
\Gread@parse@cs{#3}{#6}{urx}\Gread@parse@cs{#4}{#6}{ury}%
}%
\def\Gread@parse@cs#1#2#3{%
\@defaultunits\dimen@#1bp\relax\@nnil
\expandafter\edef\csname#2@#3\endcsname{\strip@onlypt\dimen@}%
}%
\begingroup
\catcode`\_=12\relax
\xdef\Gread@AICrop{\@percentchar AI3_Cropmarks}%
\xdef\Gread@EndComments{\@percentchar\@percentchar EndComments }%
\endgroup
\let\AI@llx\@empty\let\AI@lly\@empty\let\AI@urx\@empty\let\AI@ury\@empty
\let\BB@llx\@empty\let\BB@lly\@empty\let\BB@urx\@empty\let\BB@ury\@empty
\let\TR@llx\@empty\let\TR@lly\@empty\let\TR@urx\@empty\let\TR@ury\@empty
\let\VP@llx\@empty\let\VP@lly\@empty\let\VP@urx\@empty\let\VP@ury\@empty
\ifx\strip@onlypt\undefined
{\catcode`t=12\catcode`p=12\gdef\rem@onlyPT#1pt{#1}}%
\def\strip@onlypt#1{\expandafter\rem@onlyPT\the#1\space}%
\fi
\def\Grot@start{\Gtrans@start\Grotate@\Grot@angle\Gtrans@trats}%
\def\Grot@end{\Gtrans@end}%
\def\Gscale@start{\Gtrans@start\Gscale@\Gscale@x\Gscale@y\Gtrans@trats}%
\def\Gscale@end{\Gtrans@end}%
\def\Gclip@start#1#2{\Gtrans@start\Gclip@rect{#1}{#2}\Gtrans@trats}%
\def\Gclip@end{\Gtrans@end}%
\def\Ginclude@PS#1{\Ginclude@graphic{PS}{#1}}%
\def\Ginclude@EPSF#1{\Ginclude@graphic{EPSF}{#1}}%
\def\Ginclude@tiff#1{\Ginclude@graphic{TIFF}{#1}}%
\def\Ginclude@bmp#1{\Ginclude@graphic{BMP}{#1}}%
\def\Ginclude@bmp#1{\Ginclude@graphic{WIN}{#1}}%
\def\Ginclude@pcl#1{\Ginclude@graphic{PCL}{#1}}%
\def\Ginclude@hpgl#1{\Ginclude@graphic{HPGL}{#1}}%
\def\Ginclude@pictfile#1{\Ginclude@graphic{PICTf}{#1}}%
\def\Ginclude@picture#1{\Ginclude@graphic{PICTr}{#1}}%
\def\Ginclude@graphic#1#2{%
\hbox\bgroup
\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
\dimen@\Gin@urx bp%
\advance\dimen@-\Gin@llx bp%
\dimen@\Gin@scalex\dimen@
\@tempdima\Gin@ury bp%
\advance\@tempdima-\Gin@lly bp%
\@tempdima\Gin@scaley\@tempdima
\edef\@tempa{%
\noexpand\Gclip@start{\strip@onlypt\dimen@}%
{\strip@onlypt\@tempdima}%
}\@tempa
\fi
\dimen@\Gin@llx bp\dimen@\Gin@scalex\dimen@
\kern-\dimen@
\dimen@\Gin@lly bp\dimen@\Gin@scaley\dimen@
\raise-\dimen@\hbox\bgroup
\special@P@graphic{#1}{#2}%
\egroup
\ifGin@clip\Gclip@end\fi
\egroup
}%
\@SupportsEPStrue
\@always@readtrue
\def\color@gray#1#2{%
\expandafter\def\expandafter#1\color@P@gray{#2}%
}%
\def\color@cmyk#1#2{\c@lor@@cmyk#2\@@#1}%
\def\c@lor@@cmyk#1,#2,#3,#4\@@#5{%
\expandafter\def\expandafter#5\color@P@cmyk{#1}{#2}{#3}{#4}%
}%
\def\color@rgb#1#2{\c@lor@@rgb#2\@@#1}%
\def\c@lor@@rgb#1,#2,#3\@@#4{%
\expandafter\def\expandafter#4\color@P@rgb{#1}{#2}{#3}%
}%
\def\color@hsb#1#2{\c@lor@@hsb#2\@@#1}%
\def\c@lor@@hsb#1,#2,#3\@@#4{%
\expandafter\def\expandafter#4\color@P@hsb{#1}{#2}{#3}%
}%
\def\color@named#1#2{\c@lor@@named#2,,\@@#1}
\def\c@lor@@named#1,#2,#3\@@#4{%
\@ifundefined{col@#1}{%
\PackageError{color}{Undefined color `#1'}\@ehd
}{%
\edef\@tempa{\color@P@custom{#1}{\if!#2!1\else#2\fi}}%
\expandafter\def\expandafter#4\@tempa
}%
}%
\AtEndOfPackage{%
\expandafter\def\expandafter\current@color\color@P@gray{0}%
}%
\def\set@color{%
\color@P@push
\color@P@set\current@color
\color@P@hsup
\aftergroup\reset@color
}%
\def\reset@color{\color@P@pop}%
\def\set@page@color{%
\color@P@page
\color@P@set\current@color
\color@P@egap
}%
\def\define@color@named#1#2{%
\edef\@tempa{{#1}{#2}}\expandafter\AddCustomColor\@tempa
\expandafter\edef\csname col@#1\endcsname{#2}%
}%
\def\AddCustomColor#1#2{%
\g@addto@macro\@FirstPageSpecials{\color@P@define{#1}{#2}}%
}%
\AtBeginDocument\@FirstPageSpecials
\let\@FirstPageSpecials\@empty
\ifx\strip@onlypt\undefined
{\catcode`t=12\catcode`p=12\gdef\rem@onlyPT#1pt{#1}}%
\def\strip@onlypt#1{\expandafter\rem@onlyPT\the#1\space}%
\fi
\def\Gtrans@start{%
\Raw@PS{gsave}%
\special{postscript 0 0 transform}\special{rawpostscript itransform}%
\Raw@PS{2 copy translate 72.27 72 div}%
\Raw@PS{dup dup}%
\Raw@PS{neg}%
\Raw@PS{scale}%
}%
\def\Gtrans@trats{%
\Raw@PS{1 exch div dup}%
\Raw@PS{neg}%
\Raw@PS{scale neg exch neg exch translate}%
}%
\def\Gtrans@end{%
\Raw@PS{grestore}%
}%
\def\Grotate@#1{%
\Raw@PS{#1\space rotate }%
}%
\def\Gskew@#1{%
\Raw@PS{1 #1\space 0 1 0 0 concat }%
}%
\def\Gscale@#1#2{%
\Raw@PS{#1\space#2\space scale }%
}%
\def\Gtranslate@#1#2{%
\Raw@PS{#1\space#2\space translate }%
}%
\def\Gaffine@#1#2#3#4#5#6{%
\Raw@PS{#1 #2 #3 #4 #5 #6 concat }%
}%
\def\Gprojective@#1#2#3#4#5#6#7#8#9{%
}%
\def\Gclip@rect#1#2{%
\Raw@PS{%
#1 #2 0 0
moveto 1 index 0 rlineto 0 exch rlineto neg 0 rlineto closepath
clip
}%
}%
\def\Raw@PS#1{%
\special{%
rawpostscript %
#1}%
}%
\def\special@P@graphic#1#2{%
\csname Gimport@#1\endcsname{#2}%
}%
\def\Gimport@PS#1{%
\Textures@Include{postscriptfile}{#1}%
}%
\def\Gimport@EPSF#1{%
\Textures@Include{illustration}{#1}%
}%
\def\Gimport@PICTf#1{%
\Textures@Include{pictfile}{#1}%
}%
\def\Gimport@PICTr#1{%
\Textures@Include{picture}{#1}%
}%
\def\Gimport@BMP#1{%
}%
\def\Gimport@TIFF#1{%
}%
\def\Textures@Include#1#2{%
\special{#1 #2 scaled \Gin@scalex. \Gin@scaley. }%
}%
\def\color@P@gray#1{%
{rgb #1. #1. #1.}%
}%
\def\color@P@cmyk#1#2#3#4{%
{cmyk #1. #2. #3. #4.}%
}%
\def\color@P@rgb#1#2#3{%
{rgb #1. #2. #3.}%
}%
\def\color@P@hsb#1#2#3{%
}%
\def\color@P@custom#1#2{%
{#1 #2}%
}%
\def\color@P@push{%
\special{color push}%
}%
\def\color@P@hsup{%
}%
\def\color@P@set#1{%
\special{color #1}%
}%
\def\color@P@pop{%
\special{color pop}%
}%
\def\color@P@page{%
\special{color push}%
}%
\def\color@P@egap{%
\special{color pop}%
}%
\def\color@P@define#1#2{%
\special{color define #1 #2}%
}%
\def\c@lor@to@ps#1 #2\@@{\csname c@lor@ps@#1\endcsname#2 \@@}%
\def\c@lor@to@ps@#1 #2\@@{\csname c@lor@ps@#1@\endcsname#2 \@@}%
\def\c@lor@ps@#1 #2\@@{%
\expandafter\expandafter
\expandafter\c@lor@to@ps@
\csname col@#1%
\expandafter\endcsname\space
#2. \@@{#1}%
}%
\def\c@lor@ps@rgb#1. #2. #3. #4\@@{\color@P@rgb{#1.}{#2.}{#3.}}%
\def\c@lor@ps@rgb@#1. #2. #3. #4. #5\@@#6{\color@P@rgb{#1.}{#2.}{#3.}}%
\def\c@lor@ps@cmyk#1. #2. #3. #4. #5. #6\@@{\color@P@cmyk{#1.}{#2.}{#3.}{#4.}}%
\def\c@lor@ps@cmyk@#1. #2. #3. #4. #5. #6\@@#7{%
#1 #2 #3 #4 (#7) findcustomcmykcolor
\if!\@firstofone#5!1 \else#5 \fi
setcustomcolor
}%
\@namedef{Gin@rule@*}#1{{\Gtype@default}{\Gin@ext}{#1}}%
\def\Gtype@default{EPSF}%
\@namedef{Gin@[email protected]}#1{{PS}{\Gin@ext}{#1}}
\def\Gread@PS{\Gread@minimal}%
\@namedef{Gin@[email protected]}#1{{EPSF}{\Gin@ext}{#1}}%
\@namedef{Gin@[email protected]}#1{{EPSF}{\Gin@ext}{#1}}%
\@namedef{Gin@[email protected]}#1{{pictfile}{\Gin@ext}{#1}}%
\def\Gread@pictfile{\Gread@minimal}%
\@namedef{Gin@[email protected]}#1{{picture}{\Gin@ext}{#1}}%
\def\Gread@picture{\Gread@minimal}%
\def\Gin@sepdefault{.}%
\def\Gin@extensions{{},.ps,.eps,.pict}%
\begingroup\catcode`\_12
\g@addto@macro\@FirstPageSpecials{%
\special{prepostscript
userdict /AI3_noCropMarks true put
}%
}%
\endgroup
\endinput
%%
%% End of file `textures.def'.
|