summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/pst-eps/pst-eps.tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-11-30 22:00:11 +0000
committerKarl Berry <karl@freefriends.org>2006-11-30 22:00:11 +0000
commit8f3c66451e590adc3ce6c15dd5c11d89e399f9a7 (patch)
tree3df45c0d19a1e702576b0e91cf7c5f1f1f97ac5f /Master/texmf-dist/tex/generic/pst-eps/pst-eps.tex
parent50b457db9ae8c77bdad87ef2bb4a246769a36c91 (diff)
pst-grad/eps
git-svn-id: svn://tug.org/texlive/trunk@2565 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/generic/pst-eps/pst-eps.tex')
-rw-r--r--Master/texmf-dist/tex/generic/pst-eps/pst-eps.tex241
1 files changed, 241 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/generic/pst-eps/pst-eps.tex b/Master/texmf-dist/tex/generic/pst-eps/pst-eps.tex
new file mode 100644
index 00000000000..5450e814c66
--- /dev/null
+++ b/Master/texmf-dist/tex/generic/pst-eps/pst-eps.tex
@@ -0,0 +1,241 @@
+%% BEGIN pst-eps.tex
+%%
+%% Writing EPS files with PSTricks 97.
+%% See the PSTricks User's Guide for description.
+%%
+%%
+%% COPYRIGHT 1993, 1994, 1999 by Timothy Van Zandt, tvz@nwu.edu.
+%% COPYRIGHT 2006 by Herbert Voss, hvoss@tug.org.
+%%
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN
+%% archives in directory macros/latex/base/lppl.txt.
+%%
+
+\csname PSTfilesLoaded\endcsname
+\let\PSTfilesLoaded\endinput
+\ifx\PSTricksLoaded\endinput\else
+ \def\next{\input pstricks.tex}
+ \expandafter\next
+\fi
+\ifx\PSTXKeyLoaded\endinput\else\input pst-xkey\fi
+%
+\def\fileversion{1.00}
+\def\filedate{2006/11/04}
+\message{ v\fileversion, \filedate}
+%
+\edef\TheAtCode{\the\catcode`\@}
+\catcode`\@=11
+\pst@addfams{pst-eps}
+
+% Exporting PostScript files
+
+% DG/SR modification begin - May 5, 1997 - Patch 1
+% With LaTeX 2e, we must force now inclusion of header files
+%\def\TeXtoEPS{\begingroup\pst@makebox{}\bgroup\ignorespaces}
+\def\TeXtoEPS{%
+ \ifx\documentclass\@undefined\else\@begindvi\fi
+ \begingroup\pst@makebox{}\bgroup\ignorespaces}
+% DG/SR modification end
+\def\endTeXtoEPS{%
+ \egroup
+% Get contents of page, in case it contains special's:
+ \begingroup
+ \global\setbox\pst@boxg\box\voidb@x
+ \output{\global\setbox\pst@boxg\box\@cclv}%
+ \par\hbox{}\penalty-10000
+ \endgroup
+ \dp\pst@boxg\z@
+ \ht\pst@boxg\z@
+ \wd\pst@boxg\z@
+ \pst@dimg=3pt
+ \shipout\hbox{%
+ \box\pst@boxg
+ \pst@Verb{gsave CM \tx@STV CP newpath moveto
+ \pst@number\pst@dimg neg 0 rmoveto clip setmatrix}%
+ \vrule width \wd\pst@hbox height \ht\pst@hbox depth \dp\pst@hbox
+ \pstVerb{currentpoint grestore moveto}%
+ \kern -\wd\pst@hbox
+ \unhbox\pst@hbox}%
+ \endgroup
+ \typeout{PSTricks: Converting TeX box to EPS.}%
+ \typeout{\@spaces\@spaces\space\space With dvips, use -E option.}}
+
+% Writing PSTricks graphics to EPS files
+
+\newwrite\pst@epsout
+\newwrite\pst@tempout
+
+\def\pst@getbp#1#2#3{%
+ \csname psset#1length\endcsname\pst@dimg{#2}%
+ \advance\pst@dimg .49bp
+ \pst@cntg=\pst@dimg
+ \multiply\pst@cntg 5
+ \divide\pst@cntg 328909
+ \edef#3{\the\pst@cntg}}
+
+\define@key[psset]{pst-eps}{bbllx}{\pst@getbp{x}{#1}\psk@bbllx}
+\define@key[psset]{pst-eps}{bblly}{\pst@getbp{y}{#1}\psk@bblly}
+\define@key[psset]{pst-eps}{bburx}{\pst@getbp{x}{#1}\psk@bburx}
+\define@key[psset]{pst-eps}{bbury}{\pst@getbp{y}{#1}\psk@bbury}
+\psset[pst-eps]{bbllx=-1pt,bblly=-1pt,bburx=1pt,bbury=1pt}
+
+\define@key[psset]{pst-eps}{headers}{%
+ \def\pst@tempg{#1}
+ \ifx\pst@tempg\@none
+ \def\psk@headers{\z@}% 0 -> none
+ \else
+ \def\pst@temph{all}%
+ \ifx\pst@tempg\pst@temph
+ \def\psk@headers{2\relax}% 2 -> all
+ \else
+ \def\psk@headers{1\relax}% 1 -> user
+ \fi
+ \fi}
+%
+\define@key[psset]{pst-eps}{headerfile}{\def\psk@headerfile{#1}}
+\define@boolkey[psset]{pst-eps}[Pst@]{checkfile}[true]{}
+\psset[pst-eps]{headers=none,checkfile=true,headerfile={}}
+
+\define@key[psset]{pst-eps}{makeeps}{%
+ \def\pst@tempg{#1}%
+ \ifx\pst@tempg\@none
+ \def\psk@makeeps{\z@}% 0 -> none
+ \else
+ \def\pst@temph{all}%
+ \ifx\pst@tempg\pst@temph
+ \def\psk@makeeps{3\relax}% 3 -> all
+ \else
+ \def\pst@temph{all*}% 2 -> all*
+ \ifx\pst@tempg\pst@temph
+ \def\psk@makeeps{2\relax}%
+ \else
+ \def\psk@makeeps{1\relax}% 1 -> new
+ \fi
+ \fi
+ \fi}
+\psset[pst-eps]{makeeps=new}
+%
+\def\pst@checkfile#1{%
+ \typeout{pst-eps: check for file #1}
+ \ifcase\psk@makeeps
+ \@pstfalse
+ \or
+ \immediate\openin1=#1
+ \ifeof1\relax\@psttrue\else\@pstfalse\fi
+ \immediate\closein1
+ \or
+ \immediate\openin1=#1
+ \ifeof1
+ \@psttrue
+ \else
+ \ifPst@checkfile
+ \typeout{^^J
+ PSTricks warning:^^J
+ !! File `#1' exists and will be erased if in current directory!^^J
+ !! Make `#1'? (y=yes; n=no)}
+ \read16 to \pst@tempg
+ \if y\pst@tempg\relax \@psttrue\else\@pstfalse\fi
+ \else\@psttrue\fi
+ \fi
+ \immediate\closein1
+ \or\@psttrue
+ \fi}
+%
+\def\PSTtoEPS{\def\pst@par{}\pst@object{PSTtoEPS}}
+\begingroup
+\catcode`\%=12
+\catcode`\"=14
+\long\gdef\PSTtoEPS@i#1#2{"
+ \begingroup
+ \use@par
+ \newlinechar`\^^J"
+ \pst@checkfile{#1}"
+ \if@pst
+ \immediate\openout\pst@epsout=#1
+ \def\write@eps##1{\immediate\write\pst@epsout{##1}}"
+ \def\addto@pscode##1{"
+ \begingroup
+ \newlinechar`\ "
+ \write@eps{##1}"
+ \endgroup}
+ \write@eps{"
+ %!PS-Adobe-3.0 EPSF-3.0^^J"
+ %%Creator: PSTricks^^J"
+ %%Title: #1^^J"
+ %%CreationDate: \the\year/\the\month/\the\day^^J"
+ %%BoundingBox:
+ \psk@bbllx\space\psk@bblly\space\psk@bburx\space\psk@bbury^^J"
+ %%EndComments}"
+ \ifcase\psk@headers
+ \def\pst@tempg{}"
+ \or
+ \let\pst@tempg\psk@headerfile
+ \or
+ \edef\pst@tempg{\pst@theheaders,\psk@headerfile}"
+ \fi
+ \ifx\pst@tempg\@empty\else
+ \expandafter\pst@writeheaders\pst@tempg,\@nil
+ \fi
+ \write@eps{%%BeginSetup}"
+ \addto@pscode\pst@dict
+ \write@eps{%%EndSetup}"
+ \ifdim\pstunit=1bp\else
+ \pst@dimg=\pstunit\relax
+ \write@eps{\number\pst@dimg\space 65781.8 div dup scale}"
+ \fi
+ \addto@pscode{"
+ \tx@STP
+ 0 setlinecap
+ 0 setlinejoin
+ 10 setmiterlimit
+ [] 0 setdash
+ newpath}"
+ \setbox\pst@hbox=\hbox{"
+ \def\init@pscode{"
+ \write@eps{"
+ gsave
+ \psk@origin
+ \psk@swapaxes
+ \pst@number\pslinewidth SLW
+ \pst@usecolor\pslinecolor}}"
+ \def\use@pscode{\write@eps{grestore}}"
+ \let\pst@rawfile\pst@filetoeps
+ \def\psclip#1{\pst@misplaced\psclip}"
+ \let\endpsclip\relax
+ \def\pstextpath@@@[##1](##2,##3)##4{\pst@misplaced\pstextpath}"
+ \def\nc@object##1##2##3##4{\pst@misplaced{node connection}}"
+ \def\PSTtoEPS@i##1##2{\pst@misplaced\PSTtoEPS}"
+ #2}"
+ \write@eps{"
+ %%Trailer^^J"
+ end^^J"
+ %%EOF}"
+ \immediate\closeout\pst@epsout
+ \fi
+ \endgroup
+ \ignorespaces}
+
+\gdef\pst@writeheaders#1,{"
+ \def\pst@tempg{#1}"
+ \ifx\pst@tempg\@empty\else
+ \write@eps{%%BeginProcSet: #1}"
+ \pst@filetoeps{#1}"
+ \write@eps{%%EndProcSet}"
+ \fi
+ \@ifnextchar\@nil{\let\pst@tempg}{\pst@writeheaders}}
+\endgroup
+
+\def\pst@filetoeps#1{%
+ \begingroup
+ \def\do##1{\catcode`##1=12\relax}%
+ \dospecials
+ \def\addto@pscode##1{\write@eps{##1}}%
+ \pst@@rawfile{#1}%
+ \endgroup}
+
+\catcode`\@=\TheAtCode\relax
+
+\endinput
+%%
+%% END pst-eps.tex