blob: 115f3442db05532d7811c08b59f9ef93ffabaa54 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
%% $Id: pst-ovl.tex 859 2013-12-21 16:51:58Z herbert $
%%
%%
%% This is file `pst-ovl.tex',
%%
%% IMPORTANT NOTICE:
%%
%% Package `pst-ovl.tex'
%%
%% 2015 -- Timothy Van Zandt
%% 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.
%%
%% DESCRIPTION:
%% `pst-ovl' is a PostScript related package for
%% overlay support
%%
\csname PSTovlloaded\endcsname
\let\PSTovlloaded\endinput
%
%% Requires main PSTricks
\ifx\PSTricksLoaded\endinput\else\input pstricks \fi
%
\def\fileversion{0.07}
\def\filedate{2016/05/03}
\message{`pst-ovl' v\fileversion, \filedate\space (tvz,hv)}
%
\edef\PstAtCode{\the\catcode`\@} \catcode`\@=11\relax
%
\def\tx@BeginOL{ tx@ovlDict begin BeginOL }
\def\tx@InitOL{ tx@ovlDict begin InitOL }
\def\tx@BOLend{ tx@ovlDict begin BOL end }
%
\pstheader{pst-ovl.pro}
%
\def\pst@initoverlay#1{\pst@Verb{ \tx@InitOL end /TheOL #1 def }}
%
\def\AltOverlayMode{%
\def\pst@initoverlay##1{%
\pst@Verb{
\tx@InitOL
/Visible { initclip } def
/Invisible {
CP newpath OLUnit itransform moveto clip newpath moveto
} def
/TheOL ##1 def end }}}
%
\def\pst@overlay#1{%
\edef\curr@overlay{#1}%
\expandafter\pst@Verb\expandafter{ #1 \tx@BOLend }%
\aftergroup\pst@endoverlay}
%
\def\pst@endoverlay{\expandafter\pst@Verb\expandafter{\curr@overlay \space \tx@BOLend }}
\def\curr@overlay{-1}
%
\newbox\thepsoverlaybox
%
\def\psoverlaybox{%
\global\setbox\thepsoverlaybox=\hbox\bgroup
\begingroup
\let\psoverlay\pst@overlay
\def\psoverlaybox{%
\@pstrickserr{Overlays cannot be nested}\@eha}%
\def\psputoverlaybox{%
\@pstrickserr{You must end the overlay box
before using \string\psputoverlaybox}}%
\psoverlay{0}%
\ignorespaces}
%
\def\endpsoverlaybox{\endgroup\egroup}
\def\psputoverlaybox#1{%
\hbox{\expandafter\pst@initoverlay\expandafter{#1}\copy\thepsoverlaybox}}
%
\def\psoverlay{\@pstrickserr{\string\psoverlay\space
can only be used after \string\overlaybox}}
%
\catcode`\@=\PstAtCode\relax
%
%% END: pst-ovl.tex
\endinput
|