summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2008-04-19 00:34:18 +0000
committerKarl Berry <karl@freefriends.org>2008-04-19 00:34:18 +0000
commit4e2ac77b6408065820377abd25541151953797dd (patch)
tree597a01cdcbfe6ef38d48bb76838f78cfb61f7f39 /Master
parentd326aac622c002c9b2288faf17513607d247a7a3 (diff)
pstricks 1.22 (17apr08)
git-svn-id: svn://tug.org/texlive/trunk@7504 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/doc/generic/pstricks/Changes.doc18
-rw-r--r--Master/texmf-dist/doc/generic/pstricks/examples.zipbin181885 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pstricks/pst-news2008.pdfbin173945 -> 238682 bytes
-rw-r--r--Master/texmf-dist/dvips/pstricks/Changes6
-rw-r--r--Master/texmf-dist/dvips/pstricks/pst-algparser.pro14
-rw-r--r--Master/texmf-dist/dvips/pstricks/pst-dots.pro203
-rw-r--r--Master/texmf-dist/dvips/pstricks/pst-node.pro40
-rw-r--r--Master/texmf-dist/dvips/pstricks/pstricks.pro189
-rw-r--r--Master/texmf-dist/tex/generic/pstricks/Changes8
-rw-r--r--Master/texmf-dist/tex/generic/pstricks/distiller.con160
-rw-r--r--Master/texmf-dist/tex/generic/pstricks/dvipsone.con106
-rw-r--r--Master/texmf-dist/tex/generic/pstricks/pstricks.con314
-rw-r--r--Master/texmf-dist/tex/generic/pstricks/pstricks.tex134
-rw-r--r--Master/texmf-dist/tex/generic/pstricks/textures.con98
-rw-r--r--Master/texmf-dist/tex/generic/pstricks/vtex.con98
-rw-r--r--Master/texmf-dist/tex/generic/pstricks/xdvipdfmx.con101
16 files changed, 1267 insertions, 222 deletions
diff --git a/Master/texmf-dist/doc/generic/pstricks/Changes.doc b/Master/texmf-dist/doc/generic/pstricks/Changes.doc
index a4f2951a434..3ed819cc93d 100644
--- a/Master/texmf-dist/doc/generic/pstricks/Changes.doc
+++ b/Master/texmf-dist/doc/generic/pstricks/Changes.doc
@@ -1,17 +1,3 @@
--- pstricks-doc.pdf ------
-2007-04-11 updated documentation, no source available
-
--- pst-quickref.pdf ------
-2007-04-11 quick reference, no source available
-
--- pstricks-bug.tex ------
-2007-04-11 all unfixed bugs
-
-
--- pstnews* --------
-2006-12-19 new files pstnews1-15.tex|pdf
+2008-01-22 new files pst-news2008.tex|pdf
2005-12-22 new files pstnews1-14.tex|pdf
-2005-10-25 new files pstnews1-13.tex|pdf
-2005-09-19 new files pstnews1-11.tex|pdf
-2005-08-20 new files pstnews1-10.tex|pdf
-2005-05-12 new files pstnews97-15.tex|pdf
+2006-12-19 new files pstnews1-15.tex|pdf
diff --git a/Master/texmf-dist/doc/generic/pstricks/examples.zip b/Master/texmf-dist/doc/generic/pstricks/examples.zip
deleted file mode 100644
index 20c744620c7..00000000000
--- a/Master/texmf-dist/doc/generic/pstricks/examples.zip
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pstricks/pst-news2008.pdf b/Master/texmf-dist/doc/generic/pstricks/pst-news2008.pdf
index 95e6c5c677b..16a6b15a6ff 100644
--- a/Master/texmf-dist/doc/generic/pstricks/pst-news2008.pdf
+++ b/Master/texmf-dist/doc/generic/pstricks/pst-news2008.pdf
Binary files differ
diff --git a/Master/texmf-dist/dvips/pstricks/Changes b/Master/texmf-dist/dvips/pstricks/Changes
index d57551e998c..88a7cebf1bf 100644
--- a/Master/texmf-dist/dvips/pstricks/Changes
+++ b/Master/texmf-dist/dvips/pstricks/Changes
@@ -1,4 +1,5 @@
---- pstricks.pro
+1.03 2008-04-15 - only some cosmetics to the code
1.02 2008-01-01 - added the arrowtype D>, sides as curves (ArrowD)
- added the whole algebraic parser stuff
- added function tan := sin cos div
@@ -17,11 +18,12 @@
97, patch 5 2005-03-08 bugfix for DashLine
----- pst-node.pro
-1.00 2008-01-01 code formatting (hv)
+---- pst-text.pro
+1.00 2005-11-29 add a patch for japanese text (hv)
---- pst-dots.pro
+2.01 2008-04-18 add some comments to the code (hv)
2.00 2006-12-19 add more dot symbols from Etienne Riga (hv)
diff --git a/Master/texmf-dist/dvips/pstricks/pst-algparser.pro b/Master/texmf-dist/dvips/pstricks/pst-algparser.pro
index 398a0ecedd7..a859d0a9825 100644
--- a/Master/texmf-dist/dvips/pstricks/pst-algparser.pro
+++ b/Master/texmf-dist/dvips/pstricks/pst-algparser.pro
@@ -1,10 +1,14 @@
% $Id: pst-algparser.pro 7 2007-12-29 22:21:13Z herbert $
+%%
+%% PostScript prologue for PSTricks algorithm parser
+%% Version 0.01, 2008/01/01
+%%
+%% 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.
+%%
+%%-----------------------------------------------------------------------------%
%
-% PostScript prologue for PSTricks algorithm parser
-% Version 0.01, 2008/01/01
-% For distribution and copyright, see pstricks.tex. hv@pstricks.de
-%
-%-----------------------------------------------------------------------------%
/AlgParser { tx@AlgToPs begin AlgToPs end } def % Dominique Rodriguez
%
/tx@CoreAnalyzerDict 100 dict def tx@CoreAnalyzerDict begin
diff --git a/Master/texmf-dist/dvips/pstricks/pst-dots.pro b/Master/texmf-dist/dvips/pstricks/pst-dots.pro
index 2f98b1777e2..c704de559f5 100644
--- a/Master/texmf-dist/dvips/pstricks/pst-dots.pro
+++ b/Master/texmf-dist/dvips/pstricks/pst-dots.pro
@@ -1,28 +1,33 @@
-% $Id: pst-dots.pro 7 2007-12-29 22:21:13Z herbert $
+% $Id: pst-dots.pro 22 2008-04-18 16:03:12Z herbert $
%
%% PostScript prologue for pstricks.tex.
-%% Version 2.00, 2006/12/19
+%% Version 2.01, 2008/04/18
+%%
%% For distribution, see pstricks.tex.
%%
%% Timothy Van Zandt <tvz@Princeton.EDU>
%%
+%% 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.
+%%
%% Modified by Etienne Riga - Dec. 16, 1999
-%% Modified by Herbert Voss (hv) - 2004/12/27
%% Modified by Etienne Riga - 2005/01/01 (er)
%% to add /Diamond, /SolidDiamond and /BoldDiamond
+%% Modified by Herbert Voss (hv) - 2008/04/17
%
-10 dict dup begin
+10 dict dup begin % hold local
/FontType 3 def
/FontMatrix [.001 0 0 .001 0 0] def
/FontBBox [-571.5 -742.5 571.5 742.5] def
-% /FontBBox [-1000 -1000 1000 1000] def
-% See end of file in /BuildGlyph
+% /FontBBox [-1000 -1000 1000 1000] def % See end of file in /BuildGlyph
/Encoding 256 array def
- 0 1 255 {Encoding exch/.notdef put} for
- Encoding
- dup (b) 0 get /Bullet put
+ 0 1 255 {Encoding exch /.notdef put} for % fill the array with /.notdef
+ Encoding % replace with given dot names
+ dup (b) 0 get /Bullet put % get the numerical position of b in ASCII
+% % and save /Bullet at this place in Encoding
dup (c) 0 get /Circle put
- dup (C) 0 get /BoldCircle put
+ dup (C) 0 get /BoldCircle put % 67
dup (u) 0 get /SolidTriangle put
dup (t) 0 get /Triangle put
dup (T) 0 get /BoldTriangle put
@@ -40,7 +45,7 @@
dup (H) 0 get /BoldHexagon put
dup (G) 0 get /SolidHexagon put
dup (a) 0 get /Add put
- dup (A) 0 get /BoldAdd put
+ dup (A) 0 get /BoldAdd put % 65
dup (x) 0 get /Mul put
dup (X) 0 get /BoldMul put
dup (m) 0 get /Oplus put
@@ -56,95 +61,101 @@
(D) 0 get /BoldDiamond put
%%%
/CharProcs 47 dict def
- CharProcs begin
- /CirclePath {0 0 500 0 360 arc closepath} def
- /Bullet {CirclePath fill} def
- /Circle {CirclePath .9 .9 scale CirclePath eofill} def
- /BoldCircle {CirclePath .8 .8 scale CirclePath eofill} def
- /TrianglePath {0 660 moveto -571.5 -330 lineto 571.5 -330 lineto
- closepath} def
- /SolidTriangle {TrianglePath fill} def
- /Triangle {TrianglePath .85 .85 scale TrianglePath eofill} def
- /BoldTriangle {TrianglePath .7 .7 scale TrianglePath eofill} def
- /SquarePath {-450 450 moveto 450 450 lineto 450 -450 lineto -450 -450 lineto
- closepath} def
- /SolidSquare {SquarePath fill} def
- /Square {SquarePath .89 .89 scale SquarePath eofill} def
- /BoldSquare {SquarePath .78 .78 scale SquarePath eofill} def
- /PentagonPath {-337.8 -465 moveto 337.8 -465 lineto 546.6 177.6 lineto
- 0 574.7 lineto -546.6 177.6 lineto closepath} def
- /SolidPentagon {PentagonPath fill} def
- /Pentagon {PentagonPath .89 .89 scale PentagonPath eofill} def
- /BoldPentagon {PentagonPath .78 .78 scale PentagonPath eofill} def
+CharProcs begin
+ /CirclePath {0 0 500 0 360 arc closepath} def
+ /Bullet {CirclePath fill} def
+ /Circle {CirclePath .9 .9 scale CirclePath eofill} def
+ /BoldCircle {CirclePath .8 .8 scale CirclePath eofill} def
+ /TrianglePath {0 660 moveto -571.5 -330 lineto 571.5 -330 lineto closepath} def
+ /SolidTriangle {TrianglePath fill} def
+ /Triangle {TrianglePath .85 .85 scale TrianglePath eofill} def
+ /BoldTriangle {TrianglePath .7 .7 scale TrianglePath eofill} def
+ /SquarePath {-450 450 moveto 450 450 lineto 450 -450 lineto -450 -450 lineto closepath} def
+ /SolidSquare {SquarePath fill} def
+ /Square {SquarePath .89 .89 scale SquarePath eofill} def
+ /BoldSquare {SquarePath .78 .78 scale SquarePath eofill} def
+ /PentagonPath {
+ -337.8 -465 moveto 337.8 -465 lineto 546.6 177.6 lineto
+ 0 574.7 lineto -546.6 177.6 lineto closepath
+ } def
+ /SolidPentagon {PentagonPath fill} def
+ /Pentagon {PentagonPath .89 .89 scale PentagonPath eofill} def
+ /BoldPentagon {PentagonPath .78 .78 scale PentagonPath eofill} def
%-------------- hv begin 2004/07/25 from: er 2003/03/24
- /HexagonPath {0 550 moveto -476 275 lineto -476 -275 lineto
- 0 -550 lineto 476 -275 lineto 476 275 lineto closepath} def
- /SolidHexagon {HexagonPath fill} def
- /Hexagon {HexagonPath .89 .89 scale HexagonPath eofill} def
- /BoldHexagon {HexagonPath .79 .79 scale HexagonPath eofill} def
- /AsteriskPath {20 0 moveto 10 250 180 500 0 500 curveto
- -180 500 -10 250 -20 0 curveto closepath} def
- /Asterisk {AsteriskPath 60 rotate AsteriskPath 60 rotate AsteriskPath
- 60 rotate AsteriskPath 60 rotate AsteriskPath 60 rotate AsteriskPath
- fill} def
- /Basterp {50 250 220 500 0 500 curveto
- -220 500 -50 250 -50 30 cos 100 mul curveto} def
- /BoldAsteriskPath {50 30 cos 100 mul moveto Basterp
- 60 rotate Basterp 60 rotate Basterp
- 60 rotate Basterp 60 rotate Basterp
- 60 rotate Basterp closepath} def
- /BoldAsterisk {BoldAsteriskPath fill} def
- /SolidAsterisk {CirclePath .9 .9 scale BoldAsteriskPath eofill} def
- /CrossPath {40 550 moveto -40 550 lineto -40 40 lineto -550 40 lineto
- -550 -40 lineto -40 -40 lineto -40 -550 lineto 40 -550 lineto
- 40 -40 lineto 550 -40 lineto 550 40 lineto 40 40 lineto closepath} def
- /BoldCrossPath {80 550 moveto -80 550 lineto -80 80 lineto -550 80 lineto
- -550 -80 lineto -80 -80 lineto -80 -550 lineto 80 -550 lineto
- 80 -80 lineto 550 -80 lineto 550 80 lineto 80 80 lineto closepath} def
- /Add {CrossPath fill} def
- /Mul {45 rotate CrossPath fill} def
- /BoldAdd {BoldCrossPath fill} def
- /BoldMul {45 rotate BoldCrossPath fill} def
- /Oplus {CirclePath .9 .9 scale CirclePath eofill
- .775 .775 scale CrossPath fill} def
- /SolidOplus {CirclePath .775 .775 scale BoldCrossPath eofill} def
- /BOplus {CirclePath .8 .8 scale CirclePath eofill
- .775 .775 scale BoldCrossPath fill} def
- /Otimes {CirclePath .9 .9 scale CirclePath eofill
- 45 rotate .775 .775 scale CrossPath fill} def
- /BOtimes {CirclePath .8 .8 scale CirclePath eofill
- 45 rotate .775 .775 scale BoldCrossPath fill } def
- /SolidOtimes {CirclePath 45 rotate .775 .775 scale BoldCrossPath eofill} def
- /BarPath {40 660 moveto -40 660 lineto -40 -660 lineto 40 -660 lineto
- closepath} def
- /Bar {BarPath fill} def
- /BoldBarPath {80 660 moveto -80 660 lineto -80 -660 lineto 80 -660 lineto
- closepath} def
- /BoldBar {BoldBarPath fill} def
- /DiamondPath {0 742.5 moveto -428.5 0 lineto 0 -742.5 lineto
- 428.5 0 lineto closepath} def
- /SolidDiamond {DiamondPath fill} def
- /Diamond {DiamondPath .865 .865 scale DiamondPath eofill} def
- /BoldDiamond {DiamondPath .73 .73 scale DiamondPath eofill} def
+ /HexagonPath {
+ 0 550 moveto -476 275 lineto -476 -275 lineto
+ 0 -550 lineto 476 -275 lineto 476 275 lineto closepath
+ } def
+ /SolidHexagon {HexagonPath fill} def
+ /Hexagon {HexagonPath .89 .89 scale HexagonPath eofill} def
+ /BoldHexagon {HexagonPath .79 .79 scale HexagonPath eofill} def
+ /AsteriskPath {
+ 20 0 moveto 10 250 180 500 0 500 curveto
+ -180 500 -10 250 -20 0 curveto closepath
+ } def
+ /Asterisk {
+ AsteriskPath 60 rotate AsteriskPath 60 rotate AsteriskPath
+ 60 rotate AsteriskPath 60 rotate AsteriskPath 60 rotate AsteriskPath fill
+ } def
+ /Basterp {50 250 220 500 0 500 curveto -220 500 -50 250 -50 30 cos 100 mul curveto} def
+ /BoldAsteriskPath {
+ 50 30 cos 100 mul moveto Basterp
+ 60 rotate Basterp 60 rotate Basterp
+ 60 rotate Basterp 60 rotate Basterp
+ 60 rotate Basterp closepath
+ } def
+ /BoldAsterisk {BoldAsteriskPath fill} def
+ /SolidAsterisk {CirclePath .9 .9 scale BoldAsteriskPath eofill} def
+ /CrossPath {
+ 40 550 moveto -40 550 lineto -40 40 lineto -550 40 lineto
+ -550 -40 lineto -40 -40 lineto -40 -550 lineto 40 -550 lineto
+ 40 -40 lineto 550 -40 lineto 550 40 lineto 40 40 lineto closepath
+ } def
+ /BoldCrossPath {80 550 moveto -80 550 lineto -80 80 lineto -550 80 lineto
+ -550 -80 lineto -80 -80 lineto -80 -550 lineto 80 -550 lineto
+ 80 -80 lineto 550 -80 lineto 550 80 lineto 80 80 lineto closepath
+ } def
+ /Add {CrossPath fill} def
+ /Mul {45 rotate CrossPath fill} def
+ /BoldAdd {BoldCrossPath fill} def
+ /BoldMul {45 rotate BoldCrossPath fill} def
+ /Oplus {CirclePath .9 .9 scale CirclePath eofill .775 .775 scale CrossPath fill } def
+ /SolidOplus {CirclePath .775 .775 scale BoldCrossPath eofill} def
+ /BOplus {CirclePath .8 .8 scale CirclePath eofill .775 .775 scale BoldCrossPath fill} def
+ /Otimes {CirclePath .9 .9 scale CirclePath eofill 45 rotate .775 .775 scale CrossPath fill} def
+ /BOtimes {CirclePath .8 .8 scale CirclePath eofill 45 rotate .775 .775 scale BoldCrossPath fill } def
+ /SolidOtimes {CirclePath 45 rotate .775 .775 scale BoldCrossPath eofill} def
+ /BarPath {40 660 moveto -40 660 lineto -40 -660 lineto 40 -660 lineto closepath} def
+ /Bar {BarPath fill} def
+ /BoldBarPath {80 660 moveto -80 660 lineto -80 -660 lineto 80 -660 lineto closepath} def
+ /BoldBar {BoldBarPath fill} def
+ /DiamondPath {0 742.5 moveto -428.5 0 lineto 0 -742.5 lineto 428.5 0 lineto closepath} def
+ /SolidDiamond {DiamondPath fill} def
+ /Diamond {DiamondPath .865 .865 scale DiamondPath eofill} def
+ /BoldDiamond {DiamondPath .73 .73 scale DiamondPath eofill} def
%%%
- /.notdef { } def
- end
- /BuildGlyph {
- exch
- begin
-% Metrics 1 index get exec 0
- 0 0
+ /.notdef { } def
+end
+%
+/BuildGlyph {
+ exch
+ begin
+% Metrics 1 index get exec 0
+ 0 0
% BBoxes 3 index get exec
- -1000 -1000 1000 1000
+ -1000 -1000 1000 1000
% -571.5 -742.5 571.5 742.5
- setcachedevice
- CharProcs begin load exec end
- end
- } def
- /BuildChar {
- 1 index /Encoding get exch get
- 1 index /BuildGlyph get exec
- } bind def
+ setcachedevice
+ CharProcs begin load exec end
+ end
+} def
+%
+/BuildChar {
+ 1 index /Encoding get exch get
+ 1 index /BuildGlyph get exec
+} bind def
+
end
/PSTricksDotFont exch definefont pop
+%% end \ No newline at end of file
diff --git a/Master/texmf-dist/dvips/pstricks/pst-node.pro b/Master/texmf-dist/dvips/pstricks/pst-node.pro
index 85c44dde388..aa9d39dbe0d 100644
--- a/Master/texmf-dist/dvips/pstricks/pst-node.pro
+++ b/Master/texmf-dist/dvips/pstricks/pst-node.pro
@@ -1,11 +1,14 @@
-% $Id: pst-node.pro 7 2007-12-29 22:21:13Z herbert $
-%
-% PostScript prologue for pst-node.tex.
-% Version 1.00, 2008/01/01.
-% For distribution, see pstricks.tex.
+% $Id: pst-node.pro 11 2008-01-24 13:37:27Z herbert $
+%%
+%% PostScript prologue for pst-node.tex.
+%% Version 1.00, 2008/01/01.
+%%
+%% 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.
%
/tx@NodeDict 400 dict def tx@NodeDict begin
-tx@Dict begin
+tx@Dict begin % from main pstricks dict
/T /translate load def
end
/NewNode { % on stack: { x y } boolean N@name type InitXnode
@@ -34,14 +37,23 @@ end
/NodePos { NodeSep r add dup Cos mul exch Sin mul } def
} def
%
-/GetRnodePos { Cos 0 gt { /dx r NodeSep add def } { /dx l NodeSep sub def
-} ifelse Sin 0 gt { /dy u NodeSep add def } { /dy d NodeSep sub def }
-ifelse dx Sin mul abs dy Cos mul abs gt { dy Cos mul Sin div dy } { dx
-dup Sin mul Cos Div } ifelse } def
-/InitRnode { /Y ED /X ED X sub /r ED /l X neg def Y add neg /d ED Y sub
-/u ED /NodePos { GetRnodePos } def } def
-/DiaNodePos { w h mul w Sin mul abs h Cos mul abs add Div NodeSep add dup
-Cos mul exch Sin mul } def
+/GetRnodePos {
+ Cos 0 gt { /dx r NodeSep add def } { /dx l NodeSep sub def } ifelse
+ Sin 0 gt { /dy u NodeSep add def } { /dy d NodeSep sub def } ifelse
+ dx Sin mul abs dy
+ Cos mul abs gt { dy Cos mul Sin div dy } { dx dup Sin mul Cos Div } ifelse
+} def
+%
+/InitRnode {
+ /Y ED /X ED X sub /r ED /l X neg def Y add neg /d ED Y sub /u ED
+ /NodePos { GetRnodePos } def
+} def
+%
+/DiaNodePos {
+ w h mul w Sin mul abs h Cos mul abs add Div NodeSep add dup
+ Cos mul exch Sin mul
+} def
+%
/TriNodePos { Sin s lt { d NodeSep sub dup Cos mul Sin Div exch } { w h
mul w Sin mul h Cos abs mul add Div NodeSep add dup Cos mul exch Sin mul
} ifelse } def
diff --git a/Master/texmf-dist/dvips/pstricks/pstricks.pro b/Master/texmf-dist/dvips/pstricks/pstricks.pro
index 12b81d67af3..73e4f2a9dc7 100644
--- a/Master/texmf-dist/dvips/pstricks/pstricks.pro
+++ b/Master/texmf-dist/dvips/pstricks/pstricks.pro
@@ -1,16 +1,22 @@
-% $Id: pstricks.pro 10 2008-01-18 13:31:24Z herbert $
+% $Id: pstricks.pro 21 2008-04-18 13:40:08Z herbert $
%
-% PostScript prologue for pstricks.tex.
-% Version 1.03, 2008/01/01
-% For distribution and copyright, see pstricks.tex.
+%% PostScript prologue for pstricks.tex.
+%% Version 1.03, 2008/04/15
+%%
+%% 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.
%
%
+% Define the follwing gs-functions if not known, eg when using distiller
+%
systemdict /.setopacityalpha known not {/.setopacityalpha { pop } def } if
systemdict /.setblendmode known not {/.setblendmode { pop } def } if
systemdict /.setshapealpha known not {/.setshapealpha { pop } def } if
%
-/tx@Dict 200 dict def tx@Dict begin
-/ADict 25 dict def
+/tx@Dict 200 dict def % the main PSTricks dictionary
+tx@Dict begin
+/ADict 25 dict def % The arrow dictionaray
/CM { matrix currentmatrix } bind def
/SLW /setlinewidth load def
/CLW /currentlinewidth load def
@@ -46,16 +52,22 @@ systemdict /.setshapealpha known not {/.setshapealpha { pop } def } if
/TwoPi 6.28318530718 def
/Euler 2.71828182846 def
%/e Euler bind def
-/RadtoDeg { 180 mul Pi div } bind def % convert from radian to degrees
-/DegtoRad { Pi mul 180 div } bind def % viceversa
+/RadtoDeg { 180 mul Pi div } bind def % convert from radian to degrees
+/DegtoRad { Pi mul 180 div } bind def % viceversa
%----------------- hv end---------------------------
/PathLength@ { /z z y y1 sub x x1 sub Pyth add def /y1 y def /x1 x def } def
-/PathLength { flattenpath /z 0 def
- { /y1 ED /x1 ED /y2 y1 def /x2 x1 def
- }{ /y ED /x ED PathLength@ } {} { /y y2 def /x x2 def PathLength@ }
- /pathforall load stopped { pop pop pop pop } if z } def
-/STP { .996264 dup scale } def
-/STV { SDict begin normalscale end STP } def
+/PathLength {
+ flattenpath /z 0 def
+ { /y1 ED /x1 ED /y2 y1 def /x2 x1 def }
+ { /y ED /x ED PathLength@ }
+ {}
+ { /y y2 def /x x2 def PathLength@ }
+ /pathforall load stopped { pop pop pop pop } if
+ z
+} def
+%
+/STP { .996264 dup scale } def % BP/PT scaling
+/STV { SDict begin normalscale end STP } def %
%
%%-------------- DG begin patch 15 ---------------%%
%/DashLine { dup 0 gt { /a .5 def PathLength exch div } { pop /a 1 def
@@ -143,7 +155,8 @@ systemdict /.setshapealpha known not {/.setshapealpha { pop } def } if
%pop pop } def
%% DG/SR modification end
%
-/BeginArrow { ADict begin
+/BeginArrow {
+ ADict begin % hold it local, for end see EndArrow
/@mtrx CM def
gsave
2 copy T
@@ -152,7 +165,7 @@ systemdict /.setshapealpha known not {/.setshapealpha { pop } def } if
rotate newpath
} def
%
-/EndArrow { @mtrx setmatrix CP grestore end } def
+/EndArrow { @mtrx setmatrix CP grestore end } def % end the ADict
%
/Arrow {
CLW mul add dup
@@ -232,6 +245,7 @@ systemdict /.setshapealpha known not {/.setshapealpha { pop } def } if
n eq not { exch pop } if
showpoints { ] aload /Points ED } { n 2 mul 1 add -1 roll pop } ifelse
} def
+%
/Line {
NArray n 0 eq not
{ n 1 eq { 0 0 /n 2 def } if ArrowA /n n 2 sub def
@@ -239,8 +253,14 @@ systemdict /.setshapealpha known not {/.setshapealpha { pop } def } if
CP 4 2 roll ArrowB L pop pop
} if
} def
-/Arcto { /a [ 6 -2 roll ] cvx def a r /arcto load stopped { 5 } { 4 }
- ifelse { pop } repeat a } def
+%
+/Arcto {
+ /a [ 6 -2 roll ] cvx def
+ a r
+ /arcto load stopped { 5 } { 4 } ifelse { pop } repeat
+ a
+} def
+%
/CheckClosed { dup n 2 mul 1 sub index eq 2 index n 2 mul 1 add index eq
and { pop pop /n n 1 sub def } if } def
/Polygon { NArray n 2 eq { 0 0 /n 3 def } if n 3 lt { n { pop pop }
@@ -277,36 +297,71 @@ d /ArrowA { moveto } def /ArrowB { } def false Line closepath mtrx
% setmatrix } def
setmatrix pop } def
% DG/SR modification end
-/CCA { /y ED /x ED 2 copy y sub /dy1 ED x sub /dx1 ED /l1 dx1 dy1 Pyth
-def } def
-/CCA { /y ED /x ED 2 copy y sub /dy1 ED x sub /dx1 ED /l1 dx1 dy1 Pyth
-def } def
-/CC { /l0 l1 def /x1 x dx sub def /y1 y dy sub def /dx0 dx1 def /dy0 dy1
-def CCA /dx dx0 l1 c exp mul dx1 l0 c exp mul add def /dy dy0 l1 c exp
-mul dy1 l0 c exp mul add def /m dx0 dy0 Atan dx1 dy1 Atan sub 2 div cos
-abs b exp a mul dx dy Pyth Div 2 div def /x2 x l0 dx mul m mul sub def
-/y2 y l0 dy mul m mul sub def /dx l1 dx mul m mul neg def /dy l1 dy mul
-m mul neg def } def
-/IC { /c c 1 add def c 0 lt { /c 0 def } { c 3 gt { /c 3 def } if }
-ifelse /a a 2 mul 3 div 45 cos b exp div def CCA /dx 0 def /dy 0 def }
-def
+%
+/CCA {
+ /y ED /x ED
+ 2 copy y sub /dy1 ED
+ x sub /dx1 ED
+ /l1 dx1 dy1 Pyth def
+} def
+%
+/CC {
+ /l0 l1 def
+ /x1 x dx sub def
+ /y1 y dy sub def
+ /dx0 dx1 def
+ /dy0 dy1 def
+ CCA
+ /dx dx0 l1 c exp mul dx1 l0 c exp mul add def
+ /dy dy0 l1 c exp mul dy1 l0 c exp mul add def
+ /m dx0 dy0 Atan dx1 dy1 Atan sub 2 div cos abs b exp a mul dx dy Pyth Div 2 div def
+ /x2 x l0 dx mul m mul sub def
+ /y2 y l0 dy mul m mul sub def
+ /dx l1 dx mul m mul neg def
+ /dy l1 dy mul m mul neg def
+} def
+%
+/IC {
+ /c c 1 add def
+ c 0 lt { /c 0 def } { c 3 gt { /c 3 def } if } ifelse
+ /a a 2 mul 3 div 45 cos b exp div def
+ CCA
+ /dx 0 def
+ /dy 0 def
+} def
+%
/BOC { IC CC x2 y2 x1 y1 ArrowA CP 4 2 roll x y curveto } def
/NC { CC x1 y1 x2 y2 x y curveto } def
/EOC { x dx sub y dy sub 4 2 roll ArrowB 2 copy curveto } def
/BAC { IC CC x y moveto CC x1 y1 CP ArrowA } def
/NAC { x2 y2 x y curveto CC x1 y1 } def
/EAC { x2 y2 x y ArrowB curveto pop pop } def
+%
/OpenCurve {
NArray n 3 lt
{ n { pop pop } repeat }
{ BOC /n n 3 sub def n { NC } repeat EOC } ifelse
} def
-/AltCurve { { false NArray n 2 mul 2 roll [ n 2 mul 3 sub 1 roll ] aload
-/Points ED n 2 mul -2 roll } { false NArray } ifelse n 4 lt { n { pop
-pop } repeat } { BAC /n n 4 sub def n { NAC } repeat EAC } ifelse } def
-/ClosedCurve { NArray n 3 lt { n { pop pop } repeat } { n 3 gt {
-CheckClosed } if 6 copy n 2 mul 6 add 6 roll IC CC x y moveto n { NC }
-repeat closepath pop pop } ifelse } def
+%
+/AltCurve {
+ { false NArray n 2 mul 2 roll
+ [ n 2 mul 3 sub 1 roll ] aload
+ /Points ED
+ n 2 mul -2 roll }
+ { false NArray } ifelse
+ n 4 lt { n { pop pop } repeat } { BAC /n n 4 sub def n { NAC } repeat EAC } ifelse
+} def
+%
+/ClosedCurve {
+ NArray n 3 lt
+ { n { pop pop } repeat }
+ { n 3 gt { CheckClosed } if
+ 6 copy n 2 mul 6 add 6 roll
+ IC CC x y moveto n { NC } repeat
+ closepath pop pop
+ } ifelse
+} def
+%
/SQ { /r ED r r moveto r r neg L r neg r neg L r neg r L fill } def
/ST { /y ED /x ED x y moveto x neg y L 0 x L fill } def
/SP { /r ED gsave 0 r moveto 4 { 72 rotate 0 r L } repeat fill grestore }
@@ -324,21 +379,51 @@ ifelse } def
/Frame { CLW mul /a ED 3 -1 roll 2 copy gt { exch } if a sub /y2 ED a add
/y1 ED 2 copy gt { exch } if a sub /x2 ED a add /x1 ED 1 index 0 eq {
pop pop Rect } { OvalFrame } ifelse } def
-/BezierNArray { /f ED counttomark 2 div dup cvi /n ED n eq not { exch pop
-} if n 1 sub neg 3 mod 3 add 3 mod { 0 0 /n n 1 add def } repeat f { ]
-aload /Points ED } { n 2 mul 1 add -1 roll pop } ifelse } def
-/OpenBezier { BezierNArray n 1 eq { pop pop } { ArrowA n 4 sub 3 idiv { 6
-2 roll 4 2 roll curveto } repeat 6 2 roll 4 2 roll ArrowB curveto }
-ifelse } def
-/ClosedBezier { BezierNArray n 1 eq { pop pop } { moveto n 1 sub 3 idiv {
-6 2 roll 4 2 roll curveto } repeat closepath } ifelse } def
-/BezierShowPoints { gsave Points aload length 2 div cvi /n ED moveto n 1
-sub { lineto } repeat CLW 2 div SLW [ 4 4 ] 0 setdash stroke grestore }
-def
-/Parab { /y0 exch def /x0 exch def /y1 exch def /x1 exch def /dx x0 x1
-sub 3 div def /dy y0 y1 sub 3 div def x0 dx sub y0 dy add x1 y1 ArrowA
-x0 dx add y0 dy add x0 2 mul x1 sub y1 ArrowB curveto /Points [ x1 y1 x0
-y0 x0 2 mul x1 sub y1 ] def } def
+%
+/BezierNArray {
+ /f ED
+ counttomark 2 div dup cvi /n ED
+ n eq not { exch pop } if
+ n 1 sub neg 3 mod 3 add 3 mod { 0 0 /n n 1 add def } repeat
+ f { ] aload /Points ED } { n 2 mul 1 add -1 roll pop } ifelse
+} def
+%
+/OpenBezier {
+ BezierNArray
+ n 1 eq
+ { pop pop }
+ { ArrowA n 4 sub 3 idiv
+ { 6 2 roll 4 2 roll curveto } repeat
+ 6 2 roll 4 2 roll ArrowB curveto } ifelse
+} def
+%
+/ClosedBezier {
+ BezierNArray
+ n 1 eq
+ { pop pop }
+ { moveto n 1 sub 3 idiv
+ { 6 2 roll 4 2 roll curveto } repeat
+ closepath } ifelse
+} def
+%
+/BezierShowPoints {
+ gsave
+ Points aload length 2 div cvi /n ED
+ moveto
+ n 1 sub { lineto } repeat
+ CLW 2 div SLW [ 4 4 ] 0 setdash stroke
+ grestore
+} def
+%
+/Parab {
+ /y0 ED /x0 ED /y1 ED /x1 ED
+ /dx x0 x1 sub 3 div def
+ /dy y0 y1 sub 3 div def
+ x0 dx sub y0 dy add x1 y1 ArrowA
+ x0 dx add y0 dy add x0 2 mul x1 sub y1 ArrowB
+ curveto
+ /Points [ x1 y1 x0 y0 x0 2 mul x1 sub y1 ] def
+} def
%
/Grid {
newpath
diff --git a/Master/texmf-dist/tex/generic/pstricks/Changes b/Master/texmf-dist/tex/generic/pstricks/Changes
index a48459bf116..0c490a72f0c 100644
--- a/Master/texmf-dist/tex/generic/pstricks/Changes
+++ b/Master/texmf-dist/tex/generic/pstricks/Changes
@@ -1,4 +1,8 @@
pstricks.tex --------
+1.22 2008-04-14 - added shift=* option to get vertically centered
+ pspicture box. It is the old \pspciture[0.5] option
+ - add \pscircleOA(center)(point on the circle)
+1.21 2008-01-24 - changed code for transparency making distiller work
1.20 2008-01-01 - added opacity for normal stroke operation (lines)
- added the arrowtype <D-D> and <D<D-D>D>, which draws the
sides as betier curves (ArrowD type in pstricks.pro)
@@ -57,6 +61,10 @@ pst-node.tex --------
pst-plot.tex --------
+1.02 2008-03-21 - added an additional optional argument for \psaxes
+ which allows to put labels at the end of the axes
+ [Xtext,Xangle,Ytext,Yangle]
+1.01 2008-01-26 - make negative Dx/Dy work (hv)
1.00 2007-06-26 - added two new line style LineToXaxis/LineToYaxis (hv)
diff --git a/Master/texmf-dist/tex/generic/pstricks/distiller.con b/Master/texmf-dist/tex/generic/pstricks/distiller.con
new file mode 100644
index 00000000000..d7c25ab6ea9
--- /dev/null
+++ b/Master/texmf-dist/tex/generic/pstricks/distiller.con
@@ -0,0 +1,160 @@
+%% BEGIN: distiller.con (for distiller driver)
+%%
+%% Configuration file for PSTricks
+%%
+%% Version 0.01 (2008/01/24)
+%%
+%% For use with Adobes Distiller (tested with v7.0.7)
+%%
+%% COPYRIGHT 2008 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.
+%
+\def\pstdriver{distiller}
+{\catcode`\"=12\gdef\pstverb#1{\special{" #1}}} % Check catcode of "
+\def\pstunit{1bp}%
+\def\pstVerb#1{\special{ps: #1}}
+\def\pstverbscale{SDict begin normalscale end}
+\ifx\textsuperscript\@undefined
+ \def\pstheader#1{\special{header=#1}}
+\else
+ \ifx\Gin@PS@file@header\@undefined
+ \def\pstheader#1{\AtBeginDvi{\special{header=#1}}}
+ \else
+ \let\pstheader\Gin@PS@file@header
+ \fi
+\fi
+%% In the following, CP is short for currentpoint.
+%% The neg is necessary because dvips scales the coordinates by 1 -1.
+%% \tx@NET means neg exch neg exch translate.
+\def\pstrotate{CP CP translate 3 -1 roll neg rotate \tx@NET}
+%
+\pst@def{setTransparency}<
+ [ /BM/Normal
+ /ca \psk@opacityalpha
+ /CA \psk@opacityalpha /SetTransparency pdfmark >
+\pst@def{setStrokeTransparency}<
+ [ /BM/Normal
+ /ca \psk@strokeopacityalpha
+ /CA \psk@strokeopacityalpha /SetTransparency pdfmark >
+\pst@def{setBlendmode}<
+ [ /BM\ifcase\psk@blendmode%
+ /Normal \or
+ /Compatible %\or
+ \else /Normal
+ /Screen \or
+ /Multiply %\or
+% /Hardlight
+ \fi/ca \psk@shapealpha /CA \psk@opacityalpha /SetTransparency pdfmark >
+%%
+%% ****************** END distiller.con *****************************
+
+%%%%%%%%%%%%%%%%%%% !! CUSTOMIZATION STUFF GOES HERE: !! %%%%%%%%%%%%%%%%%%
+%% If you want to include your own customizations to pstricks.tex, then
+%% uncomment the \pstcustomize command, and include your modifications
+%% after \pstcustomize. These will be read in after pstricks.tex.
+%\pstcustomize
+%
+\endinput
+
+%%
+%%%%%%%%%%%%%%%%%%% !! GENERAL INSTRUCTIONS !! %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+Because there are no standards for dvi-to-PS driver \special's,
+some driver-dependent commands must be defined in this file.
+
+Possibly correct definitions for some dvi drivers are given below.
+Copy the section for the driver you want to use to the indicated place
+near the beginning of the file, replacing any other definitions you
+might find there.
+
+When changing drivers, you may need to remake the header file.
+
+See the PSTricks read-me file for further installation instructions.
+
+Please report good and bad experiences with dvi-to-PS drivers,
+along with the definitions of these commands that worked
+for you, to tvz@Princeton.EDU. Thanks.
+
+
+%%%%%%%%%%%%%%%% DESCRIPTION OF CONFIGURATION DEFINITIONS %%%%%%%%%%%%%%%
+
+Here are the commands that must be defined in this file:
+
+ \pstverb{} - The argument is included as verbatim PostScript,
+ grouped by save and restore. The coordinate system
+ should be square, not rotated, and with the origin
+ at TeX's currentpoint.
+
+ \pstVerb{} - The argument is included as verbatim PostScript, not
+ grouped by (g)save and (g)restore. The currentpoint
+ should be TeX's currentpoint.
+
+ \pstunit - The units used by driver for graphics included with
+ \pstverb. Probably 1bp or 1sp.
+
+ \pstverbscale - The PostScript code that scales the coordinate system
+ from that in effect with \pstVerb to that in effect
+ with \pstverb. Should not translate to the currentpoint.
+
+ \pstrotate - The PostScript code that takes a number off the stack
+ and rotates the axes properly. I.e.,
+ \pstVerb{angle \pstrotate} is used to begin rotations.
+
+ \pstheader{} - The argument is a header file (e.g., .pro file).
+ If your driver does not support such a special, then
+ the command might just remind you to include the header
+ when printing. You can use PSTricks without a header,
+ in which case it does not matter how you define
+ \pstheader. See read-me.pst for details.
+ If you cannot change the default directory where your
+ driver looks for header files, and you cannot write to
+ that directory, then you include the path for your
+ PSTricks header files.
+ E.g., \def\pstheader#1{\special{header=~/tex/#1}}.
+
+ \pstdriver - The name of the driver.
+
+
+%%%%%%%%% !! HOW TO MAKE A TEX FORMAT WITH PSTRICKS PRELOADED !! %%%%%%%%
+
+See your local TeX documentation for instructions on creating a TeX format.
+
+Before making the format, be sure that this configuration file is correct.
+It will be read only when creating the format, and not with every job.
+
+If you are not using header files, there are no more special instructions.
+
+Special instructions when using header files:
+
+ - If you want to include supplementary PSTricks files (e.g., pst-node.tex),
+ add \input commands in the customization section above.
+
+ - If your definition of \pstheader is, e.g.
+
+ \def\pstheader#1{\special{\header=#1}}
+
+ then change it to
+
+ \def\pstheader#1{%
+ \expandafter\everyjob\expandafter{\the\everyjob
+ \special{header=#1}}}
+
+ and put your original definition in the customization section, AFTER
+ any \input commands. E.g., the customization section might look like:
+
+ \pstcustomize
+ \input pst-node.tex
+ \input pst-coil.tex
+ \def\pstheader#1{\special{header=#1}}
+
+ - Input pstricks.tex at the appropriate time when creating the format.
+ E.g., when initex stops running:
+ *\input pstricks
+ *\dump
+
+
+%%
+%% END: distiller.con
diff --git a/Master/texmf-dist/tex/generic/pstricks/dvipsone.con b/Master/texmf-dist/tex/generic/pstricks/dvipsone.con
index 9f8fa4f87e9..4a90292dd00 100644
--- a/Master/texmf-dist/tex/generic/pstricks/dvipsone.con
+++ b/Master/texmf-dist/tex/generic/pstricks/dvipsone.con
@@ -19,7 +19,7 @@
\endinput
%% To get PSTricks charpath and textpath to work:
------------ pst-show.pro ------------------------------------------
+%----------- pst-show.pro ------------------------------------------
%!
% Patch for dvipsone to get PSTricks' charpath and textpath to work.
% Save as pst-show.pro, put it with your other PSTricks .pro files.
@@ -31,6 +31,108 @@ dvidict begin
/T {show 2 index 0 rmoveto} def
/s {show} def
end
-------------- end pst-show.pro ------------------------------------
+
+\endinput
+%------------- end pst-show.pro ------------------------------------
+%%
+%%%%%%%%%%%%%%%%%%% !! GENERAL INSTRUCTIONS !! %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+Because there are no standards for dvi-to-PS driver \special's,
+some driver-dependent commands must be defined in this file.
+
+Possibly correct definitions for some dvi drivers are given below.
+Copy the section for the driver you want to use to the indicated place
+near the beginning of the file, replacing any other definitions you
+might find there.
+
+When changing drivers, you may need to remake the header file.
+
+See the PSTricks read-me file for further installation instructions.
+
+Please report good and bad experiences with dvi-to-PS drivers,
+along with the definitions of these commands that worked
+for you, to tvz@Princeton.EDU. Thanks.
+
+
+%%%%%%%%%%%%%%%% DESCRIPTION OF CONFIGURATION DEFINITIONS %%%%%%%%%%%%%%%
+
+Here are the commands that must be defined in this file:
+
+ \pstverb{} - The argument is included as verbatim PostScript,
+ grouped by save and restore. The coordinate system
+ should be square, not rotated, and with the origin
+ at TeX's currentpoint.
+
+ \pstVerb{} - The argument is included as verbatim PostScript, not
+ grouped by (g)save and (g)restore. The currentpoint
+ should be TeX's currentpoint.
+
+ \pstunit - The units used by driver for graphics included with
+ \pstverb. Probably 1bp or 1sp.
+
+ \pstverbscale - The PostScript code that scales the coordinate system
+ from that in effect with \pstVerb to that in effect
+ with \pstverb. Should not translate to the currentpoint.
+
+ \pstrotate - The PostScript code that takes a number off the stack
+ and rotates the axes properly. I.e.,
+ \pstVerb{angle \pstrotate} is used to begin rotations.
+
+ \pstheader{} - The argument is a header file (e.g., .pro file).
+ If your driver does not support such a special, then
+ the command might just remind you to include the header
+ when printing. You can use PSTricks without a header,
+ in which case it does not matter how you define
+ \pstheader. See read-me.pst for details.
+ If you cannot change the default directory where your
+ driver looks for header files, and you cannot write to
+ that directory, then you include the path for your
+ PSTricks header files.
+ E.g., \def\pstheader#1{\special{header=~/tex/#1}}.
+
+ \pstdriver - The name of the driver.
+
+
+%%%%%%%%% !! HOW TO MAKE A TEX FORMAT WITH PSTRICKS PRELOADED !! %%%%%%%%
+
+See your local TeX documentation for instructions on creating a TeX format.
+
+Before making the format, be sure that this configuration file is correct.
+It will be read only when creating the format, and not with every job.
+
+If you are not using header files, there are no more special instructions.
+
+Special instructions when using header files:
+
+ - If you want to include supplementary PSTricks files (e.g., pst-node.tex),
+ add \input commands in the customization section above.
+
+ - If your definition of \pstheader is, e.g.
+
+ \def\pstheader#1{\special{\header=#1}}
+
+ then change it to
+
+ \def\pstheader#1{%
+ \expandafter\everyjob\expandafter{\the\everyjob
+ \special{header=#1}}}
+
+ and put your original definition in the customization section, AFTER
+ any \input commands. E.g., the customization section might look like:
+
+ \pstcustomize
+ \input pst-node.tex
+ \input pst-coil.tex
+ \def\pstheader#1{\special{header=#1}}
+
+ - Input pstricks.tex at the appropriate time when creating the format.
+ E.g., when initex stops running:
+ *\input pstricks
+ *\dump
+
+
%%
%% END: pstricks.con
+
+%%
+%% END: dvipsone.con
diff --git a/Master/texmf-dist/tex/generic/pstricks/pstricks.con b/Master/texmf-dist/tex/generic/pstricks/pstricks.con
index a477a0fcbe0..8dbf0b8bef4 100644
--- a/Master/texmf-dist/tex/generic/pstricks/pstricks.con
+++ b/Master/texmf-dist/tex/generic/pstricks/pstricks.con
@@ -40,5 +40,319 @@
%\pstcustomize
\endinput
+
+%%
+%%%%%%%%%%%%%%%%%%% !! GENERAL INSTRUCTIONS !! %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+Because there are no standards for dvi-to-PS driver \special's,
+some driver-dependent commands must be defined in this file.
+
+Possibly correct definitions for some dvi drivers are given below.
+Copy the section for the driver you want to use to the indicated place
+near the beginning of the file, replacing any other definitions you
+might find there.
+
+When changing drivers, you may need to remake the header file.
+
+See the PSTricks read-me file for further installation instructions.
+
+Please report good and bad experiences with dvi-to-PS drivers,
+along with the definitions of these commands that worked
+for you, to tvz@Princeton.EDU. Thanks.
+
+
+%%%%%%%%%%%%%%%% DESCRIPTION OF CONFIGURATION DEFINITIONS %%%%%%%%%%%%%%%
+
+Here are the commands that must be defined in this file:
+
+ \pstverb{} - The argument is included as verbatim PostScript,
+ grouped by save and restore. The coordinate system
+ should be square, not rotated, and with the origin
+ at TeX's currentpoint.
+
+ \pstVerb{} - The argument is included as verbatim PostScript, not
+ grouped by (g)save and (g)restore. The currentpoint
+ should be TeX's currentpoint.
+
+ \pstunit - The units used by driver for graphics included with
+ \pstverb. Probably 1bp or 1sp.
+
+ \pstverbscale - The PostScript code that scales the coordinate system
+ from that in effect with \pstVerb to that in effect
+ with \pstverb. Should not translate to the currentpoint.
+
+ \pstrotate - The PostScript code that takes a number off the stack
+ and rotates the axes properly. I.e.,
+ \pstVerb{angle \pstrotate} is used to begin rotations.
+
+ \pstheader{} - The argument is a header file (e.g., .pro file).
+ If your driver does not support such a special, then
+ the command might just remind you to include the header
+ when printing. You can use PSTricks without a header,
+ in which case it does not matter how you define
+ \pstheader. See read-me.pst for details.
+ If you cannot change the default directory where your
+ driver looks for header files, and you cannot write to
+ that directory, then you include the path for your
+ PSTricks header files.
+ E.g., \def\pstheader#1{\special{header=~/tex/#1}}.
+
+ \pstdriver - The name of the driver.
+
+
+%%%%%%%%% !! HOW TO MAKE A TEX FORMAT WITH PSTRICKS PRELOADED !! %%%%%%%%
+
+See your local TeX documentation for instructions on creating a TeX format.
+
+Before making the format, be sure that this configuration file is correct.
+It will be read only when creating the format, and not with every job.
+
+If you are not using header files, there are no more special instructions.
+
+Special instructions when using header files:
+
+ - If you want to include supplementary PSTricks files (e.g., pst-node.tex),
+ add \input commands in the customization section above.
+
+ - If your definition of \pstheader is, e.g.
+
+ \def\pstheader#1{\special{\header=#1}}
+
+ then change it to
+
+ \def\pstheader#1{%
+ \expandafter\everyjob\expandafter{\the\everyjob
+ \special{header=#1}}}
+
+ and put your original definition in the customization section, AFTER
+ any \input commands. E.g., the customization section might look like:
+
+ \pstcustomize
+ \input pst-node.tex
+ \input pst-coil.tex
+ \def\pstheader#1{\special{header=#1}}
+
+ - Input pstricks.tex at the appropriate time when creating the format.
+ E.g., when initex stops running:
+ *\input pstricks
+ *\dump
+
+
+%%%%%%%%%% !! CONFIGURATIONS FOR SOME DRIVERS !! %%%%%%%%%%%%%%%%%%%%%%%%
+
+
+%% **********************************************************************
+%% ***** Rokicki's dvips ***** Rokicki's dvips ***** Rokicki's dvips ****
+%% **********************************************************************
+%% Life is bliss with Rokicki's dvips (tested with v5.396, v5.47, 5.491):
+%%
+\def\pstdriver{Rokicki's dvips}
+{\catcode`\"=12\gdef\pstverb#1{\special{" #1}}} % Check catcode of "
+\def\pstunit{1bp}%
+\def\pstVerb#1{\special{ps: #1}}
+\def\pstverbscale{SDict begin normalscale end}
+\def\pstheader#1{\special{header=#1}}
+%%
+%% In the following, CP is short for currentpoint.
+%% The neg is necessary because dvips scales the coordinates by 1 -1.
+%% \tx@NET means neg exch neg exch translate.
+\def\pstrotate{%
+ CP CP translate 3 -1 roll neg rotate \tx@NET}
+%%
+%% If using a version before 5.47, clipping may not work. You can
+%% try the following definition of \pstverb:
+%\def\pstverb#1{\special{ps: @beginspecial #1 @endspecial}}
+%% or change "{initclip}ifelse" to "if" in the definition of @setspecial
+%% in dvips' special.pro.
+%%
+%% ****************** END Rokicki's dvips *****************************
+
+
+%% **********************************************************************
+%% **** Arbortext's dvips *** Arbortext's dvips *** Arbortext's dvips ***
+%% **********************************************************************
+%% Thanks to Wolfgang Sienel:
+%%
+\def\pstdriver{Arbortext's dvips}
+\def\pstverb#1{%
+ \special{ps::[asis] 0 SPB /ChartCheckPoint save def
+ Xpos Ypos translate #1 ChartCheckPoint restore 0 SPE}}
+\def\pstunit{1bp}
+\def\pstVerb#1{\special{ps:: #1}}
+\def\pstverbscale{}
+\def\pstrotate{CP CP translate 3 -1 roll rotate \tx@NET}
+\def\pstheader#1{%
+ \typeout{**********************************************************}%
+ \typeout{** Don't forget to include #1 when printing:}%
+ \typeout{** \space\space dvips -PRO #1 myfile}%
+ \typeout{**********************************************************}}
+%%
+%% Comments by Wolfgang on header files:
+%% Normally the standard prolog file is downloaded once to the printer
+%% with psload.ps (the initializing file for your TeX-printer) before
+%% printing TeX-documents. If you don't make any changes to psload.ps
+%% you have to type dvips -PRO PATH/pstricks.pro myfile (-PRO just
+%% works for UNIX systems. I don't have any idea about other systems).
+%% If psload.ps was not downloaded to the printer you have to append
+%% pstricks.pro to the standard prolog file dvips.pro. In this case
+%% invoke dvips as always. Note that after hitting the enter key you
+%% have to specify the option download all prolog in both cases. If you
+%% are frequently using pstricks you might want to change psload.ps. In
+%% this case contact your local TeX-guru and ask him politely to do this
+%% for you. Attention: If psload.ps is getting too big you may run into
+%% trouble with printer memory!
+%%
+%% ****************** END Arbortext's dvips *****************************
+
+
+%% **********************************************************************
+%% **** Textures *** Textures *** Textures *** Textures *** Textures ****
+%% **********************************************************************
+%% These have been tested with v1.3. It is nice to have a PostScript
+%% screen previewer, such as TScript (USA: 1-617-734-9700). (The
+%% Textures preview window will not show the PSTricks graphics.)
+%%
+\def\pstdriver{Textures}
+\def\pstunit{1bp}
+\def\pstverb#1{\special{postscript /TX@Save save def #1 TX@save restore}}
+\def\pstVerb#1{\special{postscript grestore #1 gsave}}
+\def\pstverbscale{Mag 1000 div 72.27 72 div mul dup neg scale}
+\def\pstrotate{%
+ CP CP translate 3 -1 roll neg rotate \tx@NET}
+%%
+%% \pstVerb does not define the currentpoint properly. As a workaround,
+%% insert the following lines in the customization section above.
+%%
+%% \def\pst@Verb#1{%
+%% \special{postscript \pst@dict /sps { moveto /Mag ed } def
+%% userdict begin}%
+%% \special{postscript #1 end gsave}}
+%%
+%% Textures does not support header files.
+%% However, it may still be worth using a header file for increased speed.
+%% Also, some macros can overload Textures 1.3 when not used with a header
+%% file. You can include the header file pstricks.pro by saving the
+%% PostScript output to a file and inserting the pstricks.pro with an
+%% editor. Probably a better solution is to append pstricks.pro to a
+%% copy of the laserprep, and, by changing file names of the modified
+%% laserprep and the original laserprep, use the laserprep with pstricks.pro
+%% whenever you are printing pstricks documents.
+\def\pstheader#1{%
+ \typeout{******************************************}%
+ \typeout{*** Include header file #1!! ***}%
+ \typeout{******************************************}}
+%%
+%% ****************** END Textures **************************************
+
+
+%% **********************************************************************
+%% ***** dvi2ps ***** dvi2ps ***** dvi2ps ***** dvi2ps ***** dvi2ps *****
+%% **********************************************************************
+%% I.e., dvi2ps, v2.xx. There are lot's of such things around.
+%% This probably doesn't work. Considering upgrading to Rokicki's dvips.
+%%
+\def\pstdriver{dvi2ps v2.xx}
+\def\pstunit{1pt}
+\def\pstverb#1{ pstext="save currentpoint translate
+ Resolution 72.27 div neg scale #1 restore" \space}
+\def\pstVerb#1{ pstext="#1" \space}
+\def\pstverbscale{Resolution 72.27 div neg scale}
+\def\pstrotate{%
+ CP CP translate 3 -1 roll neg rotate \tx@NET}
+\def\pstheader#1{%
+ \typeout{******************************************************}
+ \typeout{Don't forget to include the header file #1!!}
+ \typeout{******************************************************}
+%%
+%% ***************************** END dvi2ps *****************************
+
+
+%% **********************************************************************
+%% ***** dvi3ps ***** dvi3ps ***** dvi3ps ***** dvi3ps ***** dvi3ps *****
+%% **********************************************************************
+%% I.e., dvi2ps, version 3.xx, by Kevin Coombes.
+%% This has not been tested. Consider upgrading to Rokicki's dvips.
+%%
+\def\pstdriver{dvi2ps v3.xx}
+\def\pstunit{1bp}
+\def\pstverb#1{pstext="#1"}
+% \def\pstVerb#1{%
+% \special{pstext="@endspecial #1 @beginspecial @setspecial"}} % v3.0
+\def\pstVerb#1{\special{psraw="#1"}} % v3.3
+\def\pstverbscale{Resolution 72.27 div neg scale}
+\def\pstrotate{%
+ CP CP translate 3 -1 roll neg rotate \tx@NET}
+\def\pstheader#1{%
+ \typeout{******************************************************}
+ \typeout{Don't forget to include the header file #1!!}
+ \typeout{******************************************************}
+%%
+%% ******************* END dvi3ps ***************************************
+
+
+%% **********************************************************************
+%% **** OzTeX **** OzTeX **** OzTeX **** OzTeX **** OzTeX **** OzTeX ****
+%% **********************************************************************
+%% Only the pure graphics objects are supported for OzTeX.
+%% No color, rotation, clipping, nodes and node connections, overlays, etc.
+%% Also, \rput cannot be used with \SpecialCoor.
+%%
+%% The reason is given in the documentation for Version 1.3, September 1990:
+%%
+%% OzTeX generates highly efficient PostScript code but it does so at
+%% the expense of some \special functionality. Many DVI-to-PostScript
+%% translators allow you to do things like use one \verb|\special| to start
+%% rotating TeX text and another to stop the rotation. The way OzTeX
+%% interprets a DVI page makes this impossible.
+%%
+%% If using the header file, you should copy pstricks.pro to global.ps, in
+%% the same directory as your dvi file.
+%%
+\def\pstdriver{OzTeX}
+\def\pstverb#1{\special{null.ps #1}}
+\def\pstunit{1bp}
+\def\pstVerb#1{%
+ \typeout{PSTRICKS WARNING:}%
+ \typeout{\space\space You are using features not supported by OzTeX.}%
+ \typeout{\space\space These will be ignored.}%
+ \gdef\pstVerb##1{}}
+\def\pstverbscale{}
+\def\pstrotate{}
+\def\pstheader#1{%
+ \typeout{******************************************************}
+ \typeout{Don't forget to include the header file #1!!}
+ \typeout{******************************************************}}
+%%
+%% ************************* END OzTeX **********************************
+
+
+%% **********************************************************************
+%% ***** DirectTeX ***** DirectTeX ***** DirectTeX ***** DirectTeX ******
+%% **********************************************************************
+%% DirectTeX is for the Macintosh. These has been tested unsuccessfully,
+%% apparently due to a problem with DirectTeX.
+%%
+\def\pstdriver{DirectTeX}
+%%
+%% Check catcode of "
+{\catcode`\"=12\gdef\pstverb#1{\special{" #1 /Foo{}def }}}
+\def\pstunit{1bp}
+\def\pstVerb#1{\special{ps: #1 }}
+\def\pstverbscale{TeXDict begin normalscale end}
+%%
+%% In the following, CP is short for currentpoint. The neg is necessary
+%% because dvips scales the coordinates by 1 -1:
+\def\pstrotate{%
+ CP CP translate 3 -1 roll neg rotate \tx@NET}
+%%
+\def\pstheader#1{%
+ \typeout{**********************************************************}%
+ \typeout{** Don't forget to include #1 when printing:}%
+ \typeout{** \space\space DVIReader -header #1 myfile}%
+ \typeout{**********************************************************}}
+%%
+%% ****************** END DirectTeX *****************************
+
+
%%
%% END: pstricks.con
diff --git a/Master/texmf-dist/tex/generic/pstricks/pstricks.tex b/Master/texmf-dist/tex/generic/pstricks/pstricks.tex
index bb18c11cc13..dcb89080527 100644
--- a/Master/texmf-dist/tex/generic/pstricks/pstricks.tex
+++ b/Master/texmf-dist/tex/generic/pstricks/pstricks.tex
@@ -20,8 +20,8 @@
% See the PSTricks User's Guide for description.
% This uses the header file `pstricks.pro'.
%
-\def\fileversion{1.20}
-\def\filedate{2008/01/01}
+\def\fileversion{1.22}
+\def\filedate{2008/04/14}
%
\csname PSTricksLoaded\endcsname
\let\PSTricksLoaded\endinput
@@ -642,7 +642,7 @@
\def\psk@origin{}
%
\newif\ifswapaxes
-\def\psset@swapaxes#1{%
+\def\psset@swapaxes#1{% \if@pst
\@nameuse{@pst#1}%
\if@pst\def\psk@swapaxes{-90 rotate -1 1 scale }%
\else\def\psk@swapaxes{}%
@@ -769,6 +769,18 @@
}
\psset{linecap=0}
%--------------------------------- hv 2006-04-29 end ---------------------
+%------------------------- Transparency modes ----------------------------
+\pst@def{setTransparency}< \psk@opacityalpha .setopacityalpha >
+\pst@def{setStrokeTransparency}< \psk@strokeopacityalpha .setopacityalpha >
+\pst@def{setBlendmode}<
+ \ifcase\psk@blendmode
+ /Normal \or
+ /Compatible \or
+ /Screen \or
+ /Multiply %\or
+% /Hardlight
+ \fi
+ .setblendmode \psk@shapealpha .setshapealpha >
%
%--------------------------------- hv 2007-09-09 begin ---------------------
% transparency needs a run through latex -> dvips -> ps2pdf14(!)
@@ -791,19 +803,9 @@
\psset@blendmode{0}
%
\def\psfs@none{}
-\def\psfs@solid{\pst@fill{\pst@usecolor\psfillcolor \psk@opacityalpha .setopacityalpha fill }}
-\def\psfs@eofill{\pst@fill{\pst@usecolor\psfillcolor \psk@opacityalpha .setopacityalpha eofill}}
-\def\psfs@shape{%
- \pst@fill{
- \pst@usecolor\psfillcolor
- \ifcase\psk@blendmode
- /Normal \or
- /Compatible \or
- /Screen \or
- /Multiply %\or
-% /Hardlight
- \fi
- .setblendmode \psk@shapealpha .setshapealpha fill }}
+\def\psfs@solid{\pst@fill{\pst@usecolor\psfillcolor \tx@setTransparency fill }}
+\def\psfs@eofill{\pst@fill{\pst@usecolor\psfillcolor \tx@setTransparency eofill}}
+\def\psfs@shape{\pst@fill{ \pst@usecolor\psfillcolor \tx@setBlendmode fill }}
%
%--------------------------------- hv 2007-09-09 end ---------------------
%
@@ -907,9 +909,9 @@
\psset@arrowlength{1.4}
\def\psset@arrowinset#1{\pst@checknum{#1}\psk@arrowinset}%
\psset@arrowinset{.4}
-\def\tx@Arrow{ \psk@strokeopacityalpha .setopacityalpha Arrow }% hv 2008-01-13
+\def\tx@Arrow{ \tx@setStrokeTransparency Arrow }% hv 2008-01-13
% new definitions of the missing arrows ---- hv 1.1.2
-\def\tx@ArrowD{ \psk@strokeopacityalpha .setopacityalpha ArrowD }% hv 2008-01-13
+\def\tx@ArrowD{ \tx@setStrokeTransparency ArrowD }% hv 2008-01-13
%
\@namedef{psas@<|}{
\psk@tbarsize\space \tx@Tbar
@@ -935,7 +937,7 @@
\psk@bracketlength\space \psk@tbarsize\space \tx@BracketOut
}
% )-( arrow
-\def\tx@RoundBracketOut{ \psk@strokeopacityalpha .setopacityalpha RoundBracketOut }% hv 2008-01-13
+\def\tx@RoundBracketOut{ \tx@setStrokeTransparency RoundBracketOut }% hv 2008-01-13
\@namedef{psas@(}{%
/RoundBracketOut {%
CLW mul add dup 2 div
@@ -1025,7 +1027,7 @@
}
\def\psas@{}
\psset@arrows{-}
-\def\tx@SD{ \psk@opacityalpha .setopacityalpha SD }
+\def\tx@SD{ \tx@setTransparency SD }
\def\tx@EndDot{EndDot }
\def\psas@oo{{\pst@usecolor\psfillcolor true} true \psk@dotsize \tx@EndDot}
\def\psas@o{{\pst@usecolor\psfillcolor true} false \psk@dotsize \tx@EndDot}
@@ -1226,7 +1228,7 @@
gsave
\pst@number\pslinewidth SLW
\pst@usecolor\pslinecolor
- \psk@strokeopacityalpha .setopacityalpha % hv 2008-01-13
+ \tx@setStrokeTransparency % hv 2008-01-13
\@nameuse{psls@\pslinestyle}
grestore}%
\fi}
@@ -1815,6 +1817,7 @@
\newdimen\pslinearc
\def\psset@linearc#1{\pssetlength\pslinearc{#1}}
\psset@linearc{0pt}
+%
\def\psline{\pst@object{psline}}
\def\psline@i{%
\pst@getarrows{%
@@ -1926,6 +1929,9 @@
\def\tx@OpenBezier{OpenBezier }
\def\tx@ClosedBezier{ClosedBezier }
\def\tx@BezierShowPoints{BezierShowPoints }
+\def\tx@BezierCurve{BezierCurve }
+\def\pst@BezierType{2 } % the default
+%
\def\psbezier{\pst@object{psbezier}}
\def\psbezier@i{%
\pst@getarrows{%
@@ -1954,6 +1960,28 @@
\ifshowpoints \tx@BezierShowPoints \fi}%
\chardef\pst@linetype=1
\end@ClosedObj}
+
+\iffalse
+\def\psset@epsilon#1{\pst@checknum{#1}\psk@epsilon}
+\psset@epsilon{0.005} % 200 steps for one curve
+%
+\def\psBezier#1{% % allowed order is 1 ... 9
+ \ifnum#1>0 \ifnum#1<10 \def\pst@BezierType{#1 }\fi\fi%
+ \pst@object{psBezier}}
+\def\psBezier@i{%
+ \pst@getarrows{%
+ \begin@OpenObj
+ \pst@getcoors[\psBezier@ii%
+}}
+\def\psBezier@ii{%
+ \addto@pscode{%
+ \psk@epsilon % step for Bezier T=0,0+epsilon,0+i*epsilon,...,1
+ \pst@BezierType % type of the Bezier curve 2,3,4,...
+ \tx@BezierCurve
+ \ifshowpoints \tx@BezierShowPoints \fi
+ }%
+ \end@OpenObj}
+\fi
%
\def\tx@Parab{Parab }
\def\psparabola{\pst@object{psparabola}}% 1.15a 2006-01-05 (hv)
@@ -2062,7 +2090,7 @@
\the\everypsbox%
}
\def\pst@endbox{%
- \ifnum\pst@mathflag>\z@$\fi
+ \ifnum\pst@mathflag>\z@$\fi %$
\egroup
\pst@afterbox%
}
@@ -2090,7 +2118,7 @@
}
\def\pst@endlongbox{%
\endgroup
- \ifnum\pst@mathflag>\z@$\fi
+ \ifnum\pst@mathflag>\z@$\fi %$
\egroup%
}
\def\pslongbox#1#2{%
@@ -2723,6 +2751,26 @@ pop
\fi
\ignorespaces}
%
+\def\pscircleOA{\pst@object{pscircleOA}}% hv 2008-04-14
+\def\pscircleOA@i(#1)(#2){%
+ \begin@ClosedObj
+ \pst@getcoor{#1}\pst@tempA
+ \pst@@getcoor{#2}%
+ \def\pst@linetype{4}%
+ \addto@pscode{
+ \pst@tempA % x0 y0
+ 2 copy % xO yO xO yO
+ \pst@coor % xO yO xO yO xA yA
+ Pyth2 % xO yO radius
+ \psk@dimen CLW mul sub
+ \if@star \tx@SD \else
+ 0 360 arc
+ closepath
+ \fi }%
+ \showpointsfalse
+ \end@ClosedObj
+ \ignorespaces}
+%
\def\qdisk(#1)#2{%
\def\pst@par{}%
\begin@SpecialObj
@@ -2734,9 +2782,10 @@ pop
\def\psset@radius#1{\pst@@getlength{#1}\psk@radius}
\psset@radius{.25cm}
%
-\def\psCircle{\pst@object{psCircle}}
+\def\psCircle{\pst@object{psCircle}}% same as \pscircle, but uses \psk@radius
\def\psCircle@i{\@ifnextchar({\psCircle@ii}{\psCircle@ii(0,0)}}
\def\psCircle@ii(#1){\pscircle@do(#1){\psk@radius}}
+%
\def\pswedge{\pst@object{pswedge}}
\def\pswedge@i{\@ifnextchar({\pswedge@ii}{\pswedge@ii(0,0)}}
\def\pswedge@ii(#1)#2#3#4{%
@@ -3182,8 +3231,16 @@ pop
\psset@showgrid{false}
%
\newdimen\pst@shift
-\def\psset@shift#1{\pssetlength\pst@dimg{#1}%
- \pst@shift\pst@dimg}
+\newif\ifPst@shift@star
+\def\psset@shift#1{%
+ \ifx#1*
+ \global\Pst@shift@startrue
+ \pst@shift=\p@
+ \else
+ \global\Pst@shift@starfalse
+ \pssetlength\pst@dimg{#1}
+ \global\pst@shift\pst@dimg% only the outer pspicture env can have a shift
+ \fi}
% \global\pst@shift\pst@dimg}
\psset@shift{0}
% ----------- 1.10/12 end hv -------------------
@@ -3225,10 +3282,10 @@ pop
% \ignorespaces%
}
\def\pic@coor{(0,0)(0,0)(10,10)}
-\newdimen\pst@shift
+%\newdimen\pst@shift
\def\endpspicture{%
\pst@killglue
- \global\pst@shift=\pst@shift% in fact of the following endgroup
+% \global\pst@shift=\pst@shift% in fact of the following endgroup
\endgroup
\egroup
\ifdim\wd\pst@hbox=\z@\else
@@ -3239,12 +3296,18 @@ pop
\dp\pst@hbox=-\pst@dimb
\setbox\pst@hbox=\hbox{%
\kern-\pst@dima
-% ----------- 1.10/12 beg hv -------------------
-% \advance\pst@dimd-\pst@dimb%
-% \pst@dimd=\pst@shift\pst@dimd%
-% \advance\pst@dimd\pst@dimb
- \pst@dimd-\pst@shift
-% ----------- 1.10/12 end hv -------------------
+% Orig version ----------
+%\ifx\pst@tempa\@empty\else
+%\advance\pst@dimd-\pst@dimb
+%\pst@dimd=\pst@tempa\pst@dimd
+%\advance\pst@dimd\pst@dimb
+%\lower\pst@dimd
+%\fi
+%----- end Orig
+ \ifPst@shift@star\typeout{==pstricks== old behaviour of the shift option}% shift=*
+ \advance\pst@dimd-\pst@dimb
+ \pst@dimd=0.5\pst@dimd
+ \else\pst@dimd-\pst@shift\fi
\advance\pst@dimd\pst@dimb
\lower\pst@dimd%
\box\pst@hbox%
@@ -3252,8 +3315,9 @@ pop
\if@star\setbox\pst@hbox=\hbox{\clipbox@@\z@}\fi
\leavevmode\box\pst@hbox
\endgroup%
- \global\pst@shift\z@% restore value
+ \psset@shift{0}% reset value
}
+%
\@namedef{pspicture*}{\pspicture*}
\@namedef{endpspicture*}{\endpspicture}
%
diff --git a/Master/texmf-dist/tex/generic/pstricks/textures.con b/Master/texmf-dist/tex/generic/pstricks/textures.con
index 3a2b622f17c..b126464a767 100644
--- a/Master/texmf-dist/tex/generic/pstricks/textures.con
+++ b/Master/texmf-dist/tex/generic/pstricks/textures.con
@@ -25,5 +25,103 @@
\special{rawpostscript end}}
\endinput
+
+%%
+%%%%%%%%%%%%%%%%%%% !! GENERAL INSTRUCTIONS !! %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+Because there are no standards for dvi-to-PS driver \special's,
+some driver-dependent commands must be defined in this file.
+
+Possibly correct definitions for some dvi drivers are given below.
+Copy the section for the driver you want to use to the indicated place
+near the beginning of the file, replacing any other definitions you
+might find there.
+
+When changing drivers, you may need to remake the header file.
+
+See the PSTricks read-me file for further installation instructions.
+
+Please report good and bad experiences with dvi-to-PS drivers,
+along with the definitions of these commands that worked
+for you, to tvz@Princeton.EDU. Thanks.
+
+
+%%%%%%%%%%%%%%%% DESCRIPTION OF CONFIGURATION DEFINITIONS %%%%%%%%%%%%%%%
+
+Here are the commands that must be defined in this file:
+
+ \pstverb{} - The argument is included as verbatim PostScript,
+ grouped by save and restore. The coordinate system
+ should be square, not rotated, and with the origin
+ at TeX's currentpoint.
+
+ \pstVerb{} - The argument is included as verbatim PostScript, not
+ grouped by (g)save and (g)restore. The currentpoint
+ should be TeX's currentpoint.
+
+ \pstunit - The units used by driver for graphics included with
+ \pstverb. Probably 1bp or 1sp.
+
+ \pstverbscale - The PostScript code that scales the coordinate system
+ from that in effect with \pstVerb to that in effect
+ with \pstverb. Should not translate to the currentpoint.
+
+ \pstrotate - The PostScript code that takes a number off the stack
+ and rotates the axes properly. I.e.,
+ \pstVerb{angle \pstrotate} is used to begin rotations.
+
+ \pstheader{} - The argument is a header file (e.g., .pro file).
+ If your driver does not support such a special, then
+ the command might just remind you to include the header
+ when printing. You can use PSTricks without a header,
+ in which case it does not matter how you define
+ \pstheader. See read-me.pst for details.
+ If you cannot change the default directory where your
+ driver looks for header files, and you cannot write to
+ that directory, then you include the path for your
+ PSTricks header files.
+ E.g., \def\pstheader#1{\special{header=~/tex/#1}}.
+
+ \pstdriver - The name of the driver.
+
+
+%%%%%%%%% !! HOW TO MAKE A TEX FORMAT WITH PSTRICKS PRELOADED !! %%%%%%%%
+
+See your local TeX documentation for instructions on creating a TeX format.
+
+Before making the format, be sure that this configuration file is correct.
+It will be read only when creating the format, and not with every job.
+
+If you are not using header files, there are no more special instructions.
+
+Special instructions when using header files:
+
+ - If you want to include supplementary PSTricks files (e.g., pst-node.tex),
+ add \input commands in the customization section above.
+
+ - If your definition of \pstheader is, e.g.
+
+ \def\pstheader#1{\special{\header=#1}}
+
+ then change it to
+
+ \def\pstheader#1{%
+ \expandafter\everyjob\expandafter{\the\everyjob
+ \special{header=#1}}}
+
+ and put your original definition in the customization section, AFTER
+ any \input commands. E.g., the customization section might look like:
+
+ \pstcustomize
+ \input pst-node.tex
+ \input pst-coil.tex
+ \def\pstheader#1{\special{header=#1}}
+
+ - Input pstricks.tex at the appropriate time when creating the format.
+ E.g., when initex stops running:
+ *\input pstricks
+ *\dump
+
+
%%
%% END: pstricks.con
diff --git a/Master/texmf-dist/tex/generic/pstricks/vtex.con b/Master/texmf-dist/tex/generic/pstricks/vtex.con
index c5016c1a27a..50e5260147d 100644
--- a/Master/texmf-dist/tex/generic/pstricks/vtex.con
+++ b/Master/texmf-dist/tex/generic/pstricks/vtex.con
@@ -68,5 +68,103 @@
\def\psfs@eofill{\pst@fill{\pst@usecolor\psfillcolor eofill}}
\endinput
+
+%%
+%%%%%%%%%%%%%%%%%%% !! GENERAL INSTRUCTIONS !! %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+Because there are no standards for dvi-to-PS driver \special's,
+some driver-dependent commands must be defined in this file.
+
+Possibly correct definitions for some dvi drivers are given below.
+Copy the section for the driver you want to use to the indicated place
+near the beginning of the file, replacing any other definitions you
+might find there.
+
+When changing drivers, you may need to remake the header file.
+
+See the PSTricks read-me file for further installation instructions.
+
+Please report good and bad experiences with dvi-to-PS drivers,
+along with the definitions of these commands that worked
+for you, to tvz@Princeton.EDU. Thanks.
+
+
+%%%%%%%%%%%%%%%% DESCRIPTION OF CONFIGURATION DEFINITIONS %%%%%%%%%%%%%%%
+
+Here are the commands that must be defined in this file:
+
+ \pstverb{} - The argument is included as verbatim PostScript,
+ grouped by save and restore. The coordinate system
+ should be square, not rotated, and with the origin
+ at TeX's currentpoint.
+
+ \pstVerb{} - The argument is included as verbatim PostScript, not
+ grouped by (g)save and (g)restore. The currentpoint
+ should be TeX's currentpoint.
+
+ \pstunit - The units used by driver for graphics included with
+ \pstverb. Probably 1bp or 1sp.
+
+ \pstverbscale - The PostScript code that scales the coordinate system
+ from that in effect with \pstVerb to that in effect
+ with \pstverb. Should not translate to the currentpoint.
+
+ \pstrotate - The PostScript code that takes a number off the stack
+ and rotates the axes properly. I.e.,
+ \pstVerb{angle \pstrotate} is used to begin rotations.
+
+ \pstheader{} - The argument is a header file (e.g., .pro file).
+ If your driver does not support such a special, then
+ the command might just remind you to include the header
+ when printing. You can use PSTricks without a header,
+ in which case it does not matter how you define
+ \pstheader. See read-me.pst for details.
+ If you cannot change the default directory where your
+ driver looks for header files, and you cannot write to
+ that directory, then you include the path for your
+ PSTricks header files.
+ E.g., \def\pstheader#1{\special{header=~/tex/#1}}.
+
+ \pstdriver - The name of the driver.
+
+
+%%%%%%%%% !! HOW TO MAKE A TEX FORMAT WITH PSTRICKS PRELOADED !! %%%%%%%%
+
+See your local TeX documentation for instructions on creating a TeX format.
+
+Before making the format, be sure that this configuration file is correct.
+It will be read only when creating the format, and not with every job.
+
+If you are not using header files, there are no more special instructions.
+
+Special instructions when using header files:
+
+ - If you want to include supplementary PSTricks files (e.g., pst-node.tex),
+ add \input commands in the customization section above.
+
+ - If your definition of \pstheader is, e.g.
+
+ \def\pstheader#1{\special{\header=#1}}
+
+ then change it to
+
+ \def\pstheader#1{%
+ \expandafter\everyjob\expandafter{\the\everyjob
+ \special{header=#1}}}
+
+ and put your original definition in the customization section, AFTER
+ any \input commands. E.g., the customization section might look like:
+
+ \pstcustomize
+ \input pst-node.tex
+ \input pst-coil.tex
+ \def\pstheader#1{\special{header=#1}}
+
+ - Input pstricks.tex at the appropriate time when creating the format.
+ E.g., when initex stops running:
+ *\input pstricks
+ *\dump
+
+
%%
%% END: pstricks.con
diff --git a/Master/texmf-dist/tex/generic/pstricks/xdvipdfmx.con b/Master/texmf-dist/tex/generic/pstricks/xdvipdfmx.con
index 86709f55c30..d34c1378d68 100644
--- a/Master/texmf-dist/tex/generic/pstricks/xdvipdfmx.con
+++ b/Master/texmf-dist/tex/generic/pstricks/xdvipdfmx.con
@@ -44,6 +44,7 @@
\def\c@lor@ps@cmyk#1\@@{#1 setcmykcolor}
\def\c@lor@ps@gray#1\@@{#1 setgray}
\pstcustomize
+\pstVerb{ /.setopacityalpha pop def }
\def\@@scalebox{%
\leavevmode
\hbox{%
@@ -122,6 +123,106 @@
\def\AltOverlayMode{}
%The next line is not necessary, if pstricks.sty of [2007/02/18 v0.33] or newer is used.
\@ifundefined{LaTeXe}{}{\AtBeginDocument{\psset{fillcolor=white}}}
+
\endinput
+
+
+%%
+%%%%%%%%%%%%%%%%%%% !! GENERAL INSTRUCTIONS !! %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+Because there are no standards for dvi-to-PS driver \special's,
+some driver-dependent commands must be defined in this file.
+
+Possibly correct definitions for some dvi drivers are given below.
+Copy the section for the driver you want to use to the indicated place
+near the beginning of the file, replacing any other definitions you
+might find there.
+
+When changing drivers, you may need to remake the header file.
+
+See the PSTricks read-me file for further installation instructions.
+
+Please report good and bad experiences with dvi-to-PS drivers,
+along with the definitions of these commands that worked
+for you, to tvz@Princeton.EDU. Thanks.
+
+
+%%%%%%%%%%%%%%%% DESCRIPTION OF CONFIGURATION DEFINITIONS %%%%%%%%%%%%%%%
+
+Here are the commands that must be defined in this file:
+
+ \pstverb{} - The argument is included as verbatim PostScript,
+ grouped by save and restore. The coordinate system
+ should be square, not rotated, and with the origin
+ at TeX's currentpoint.
+
+ \pstVerb{} - The argument is included as verbatim PostScript, not
+ grouped by (g)save and (g)restore. The currentpoint
+ should be TeX's currentpoint.
+
+ \pstunit - The units used by driver for graphics included with
+ \pstverb. Probably 1bp or 1sp.
+
+ \pstverbscale - The PostScript code that scales the coordinate system
+ from that in effect with \pstVerb to that in effect
+ with \pstverb. Should not translate to the currentpoint.
+
+ \pstrotate - The PostScript code that takes a number off the stack
+ and rotates the axes properly. I.e.,
+ \pstVerb{angle \pstrotate} is used to begin rotations.
+
+ \pstheader{} - The argument is a header file (e.g., .pro file).
+ If your driver does not support such a special, then
+ the command might just remind you to include the header
+ when printing. You can use PSTricks without a header,
+ in which case it does not matter how you define
+ \pstheader. See read-me.pst for details.
+ If you cannot change the default directory where your
+ driver looks for header files, and you cannot write to
+ that directory, then you include the path for your
+ PSTricks header files.
+ E.g., \def\pstheader#1{\special{header=~/tex/#1}}.
+
+ \pstdriver - The name of the driver.
+
+
+%%%%%%%%% !! HOW TO MAKE A TEX FORMAT WITH PSTRICKS PRELOADED !! %%%%%%%%
+
+See your local TeX documentation for instructions on creating a TeX format.
+
+Before making the format, be sure that this configuration file is correct.
+It will be read only when creating the format, and not with every job.
+
+If you are not using header files, there are no more special instructions.
+
+Special instructions when using header files:
+
+ - If you want to include supplementary PSTricks files (e.g., pst-node.tex),
+ add \input commands in the customization section above.
+
+ - If your definition of \pstheader is, e.g.
+
+ \def\pstheader#1{\special{\header=#1}}
+
+ then change it to
+
+ \def\pstheader#1{%
+ \expandafter\everyjob\expandafter{\the\everyjob
+ \special{header=#1}}}
+
+ and put your original definition in the customization section, AFTER
+ any \input commands. E.g., the customization section might look like:
+
+ \pstcustomize
+ \input pst-node.tex
+ \input pst-coil.tex
+ \def\pstheader#1{\special{header=#1}}
+
+ - Input pstricks.tex at the appropriate time when creating the format.
+ E.g., when initex stops running:
+ *\input pstricks
+ *\dump
+
+
%%
%% END: pstricks.con