summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/pgf/systemlayer
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-11-23 22:01:18 +0000
committerKarl Berry <karl@freefriends.org>2020-11-23 22:01:18 +0000
commitc23682f2c0c9d6928d1a2d9f362b8b7ed708fb72 (patch)
tree480e773e9958e03b19a9237fd47282c94481e6eb /Master/texmf-dist/tex/generic/pgf/systemlayer
parent754f20ecc77875061dd95322eca1dd3e9f453b18 (diff)
pgf (23nov20)
git-svn-id: svn://tug.org/texlive/trunk@56989 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/generic/pgf/systemlayer')
-rw-r--r--Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvips.def20
-rw-r--r--Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def8
2 files changed, 20 insertions, 8 deletions
diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvips.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvips.def
index 70f5ba28873..678fdd4d0bf 100644
--- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvips.def
+++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvips.def
@@ -474,15 +474,27 @@
\expandafter\xdef\csname pgfsmasktrans@#1\endcsname{%
\noexpand\pgftransformcm{1}{0}{0}{1}{\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}}}%
\edef\@tempa{\noexpand\pgfutil@insertatbegincurrentpagefrombox{%
- % box coordinates (reference point and top) needed for distilling
+ % box coordinates (reference point and top) needed for ps2pdf
\pgfsys@outerinvoke{currentpoint /pgf@refy exch def /pgf@refx exch def}%
\hbox to 0pt {\hbox to \ifdim\ht#2>\ht\strutbox\ht#2\else\ht\strutbox\fi{\hss\pgfsys@outerinvoke{%
/pgf@top pgf@refy currentpoint pop pgf@refx sub VResolution Resolution div mul sub def%
}}\hss}%
+ % lower-right box corner coordinates for viewing
+ \hbox to 0pt {\hbox to \wd#2{\hss\pgfsys@outerinvoke{/pgf@right currentpoint pop def}}\hss}%
+ \hbox to 0pt {\hbox to \ifdim\dp#2>\dp\strutbox\dp#2\else\dp\strutbox\fi{\hss\pgfsys@outerinvoke{%
+ /pgf@bot pgf@refy currentpoint pop pgf@refx sub VResolution Resolution div mul add def%
+ }}\hss}%
\pgfsys@outerinvoke{gsave
- % translate box to upper left page corner, so we have the whole clipping path (i. e.
- % page area) available for distilling, as outlying parts get clipped
- clippath pathbbox newpath pop pop translate pgf@refx neg pgf@top neg translate
+ clippath pathbbox newpath pop pop translate
+ systemdict /pdfmark known {%
+ % for ps2pdf, translate box to upper-left page corner, so we have the whole clipping
+ % path (i. e. page area) available, as outlying parts get clipped
+ pgf@refx neg pgf@top neg translate%
+ } {%
+ % for viewing, however, we want to hide the box by moving it off-page; we do so by aligning
+ % the lower-right box corner with the upper-left page corner
+ pgf@right neg pgf@bot neg translate%
+ } ifelse
% translate origin (0,0) to the reference point
gsave pgf@refx pgf@refy translate
mark /_objdef {pgfsmaskxform@\the\pgf@objectcount}
diff --git a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def
index 88adfd42d9d..b87edd0e6a1 100644
--- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def
+++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def
@@ -84,7 +84,7 @@
{%
\pgf@parsefunc{#3}%
\pgfmathparse{#2}%
- \setbox\pgfutil@tempboxa=\hbox to\pgf@max{\vbox to\pgfmathresult pt{\vfil\pgfsys@invoke{/Sh sh}}\hfil}%
+ \setbox\pgfutil@tempboxa=\hbox dir TLT to\pgf@max{\vbox to\pgfmathresult pt{\vfil\pgfsys@invoke{/Sh sh}}\hfil}%
\pgf@process{\pgfpoint{\pgf@max}{#2}}%
\immediate\saveboxresource resources {%
/Shading << /Sh << /ShadingType 2
@@ -101,7 +101,7 @@
{%
\pgf@parsefunc{#3}%
\pgfmathparse{#2}%
- \setbox\pgfutil@tempboxa=\hbox to\pgfmathresult pt{\vbox to\pgf@max{\vfil\pgfsys@invoke{/Sh sh}}\hfil}%
+ \setbox\pgfutil@tempboxa=\hbox dir TLT to\pgfmathresult pt{\vbox to\pgf@max{\vfil\pgfsys@invoke{/Sh sh}}\hfil}%
\pgf@process{\pgfpoint{#2}{\pgf@max}}%
\immediate\saveboxresource resources {%
/Shading << /Sh << /ShadingType 2
@@ -117,7 +117,7 @@
\def\pgfsys@radialshading#1#2#3{%
{%
\pgf@parsefunc{#3}%
- \setbox\pgfutil@tempboxa=\hbox to2\pgf@max{\vbox to2\pgf@max{\vfil\pgfsys@invoke{/Sh sh}}\hfil}%
+ \setbox\pgfutil@tempboxa=\hbox dir TLT to2\pgf@max{\vbox to2\pgf@max{\vfil\pgfsys@invoke{/Sh sh}}\hfil}%
\pgf@process{#2}%
\pgf@xa=\pgf@x%
\pgf@ya=\pgf@y%
@@ -149,7 +149,7 @@
\pgf@yb=\pgf@y%
\advance\pgf@x by-\pgf@xa%
\advance\pgf@y by-\pgf@ya%
- \setbox\pgfutil@tempboxa=\hbox to\pgf@x{\vbox to\pgf@y{\vfil\pgfsys@invoke{/Sh sh}}\hfil}%
+ \setbox\pgfutil@tempboxa=\hbox dir TLT to\pgf@x{\vbox to\pgf@y{\vfil\pgfsys@invoke{/Sh sh}}\hfil}%
\pgf@sys@bp@correct{\pgf@xa}%
\pgf@sys@bp@correct{\pgf@ya}%
\pgf@sys@bp@correct{\pgf@xb}%