summaryrefslogtreecommitdiff
path: root/usergrps/uktug/baskervi/6_2/spqr/charpath.tex
diff options
context:
space:
mode:
Diffstat (limited to 'usergrps/uktug/baskervi/6_2/spqr/charpath.tex')
-rw-r--r--usergrps/uktug/baskervi/6_2/spqr/charpath.tex79
1 files changed, 79 insertions, 0 deletions
diff --git a/usergrps/uktug/baskervi/6_2/spqr/charpath.tex b/usergrps/uktug/baskervi/6_2/spqr/charpath.tex
new file mode 100644
index 0000000000..8e096c5690
--- /dev/null
+++ b/usergrps/uktug/baskervi/6_2/spqr/charpath.tex
@@ -0,0 +1,79 @@
+%% BEGIN charpath.tex/charpath.sty
+%%
+%% For stroking and filling characters with PSTricks' line and fill styles.
+%%
+\def\fileversion{0.93a}
+\def\filedate{93/03/12}
+%%
+%% COPYRIGHT 1993, by Timothy Van Zandt, tvz@Princeton.EDU
+%% See pstricks.tex or pstricks.doc for copying restrictions.
+%%
+%% See the PSTricks User's Guide for description.
+%% See chartest.tex for sample input.
+%% See chartest.ps for sample output.
+%%
+
+\message{ v\fileversion, \filedate}
+
+\csname PSTcharpathLoaded\endcsname
+\let\PSTcharpathLoaded\endinput
+
+\ifx\PSTricksLoaded\endinput\else
+ \def\next{\input pstricks.tex}
+ \expandafter\next
+\fi
+
+\edef\TheAtCode{\the\catcode`\@}
+\catcode`\@=11
+
+\def\tx@CharPathShow{%
+ /tx@CharPathSavedShow /show load def
+ /show {
+ % These 3 lines check whether charpath yields anything interesting.
+ dup gsave newpath 0 0 moveto
+ true charpath pathbbox grestore
+ 3 -1 roll eq 3 1 roll eq and
+ % If not, just use show.
+ { tx@CharPathSavedShow }
+ % Otherwise, use charpath.
+ { true charpath }
+ ifelse }
+ def }
+
+\def\pscharpath{\def\pst@par{}\pst@object{pscharpath}}
+\def\pscharpath@i{\pst@makebox\pscharpath@ii}
+\def\pscharpath@ii{%
+ \leavevmode\hbox{%
+ \pstVerb{\tx@CharPathShow}%
+ \box\pst@hbox
+ \pstVerb{/show /tx@CharPathSavedShow load def}%
+ \begin@ClosedObj
+ \def\pst@linetype{1}%
+ \psdashadjustfalse
+ \showpointsfalse
+ \let\pst@newpath\@empty
+ \def\use@pscode{%
+ \pst@Verb{%
+ gsave
+ \tx@STV
+ \pst@code
+ grestore
+ \if@star\else CP newpath moveto \fi}}%
+ \end@ClosedObj}}
+
+\def\pscharclip{\def\pst@par{}\pst@object{pscharclip}}
+\def\pscharclip@i{\pst@makebox\pscharclip@ii}
+\def\pscharclip@ii{%
+ \leavevmode
+ \begingroup
+ \begin@psclip
+ {\@startrue\pscharpath@ii}%
+ \pstVerb{clip \if@star\else currentpoint newpath moveto\fi}%
+ \def\endpscharclip{\end@psclip\endgroup}%
+ \ignorespaces}
+\def\endpscharclip{\pst@misplaced\endpscharclip}
+
+\catcode`\@=\TheAtCode\relax
+
+\endinput
+%% END charpath.tex/charpath.sty