summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def')
-rw-r--r--Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def54
1 files changed, 29 insertions, 25 deletions
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 24fad51a342..ffd5e35c6bf 100644
--- a/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def
+++ b/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def
@@ -1,4 +1,5 @@
% Copyright 2006 by Till Tantau
+% CMYK and grayscale shadings adaptation copyright 2019 by David Purton
%
% This file may be distributed and/or modified
%
@@ -10,9 +11,9 @@
\ProvidesFileRCS{pgfsys-luatex.def}
\ifnum\luatexversion<95
- \immediate\write-1{luatex driver of PGF: detected lua version \the\luatexversion; falling back to old pdftex driver^^J}%
- \input pgfsys-pdftex.def
- \expandafter\endinput
+ \immediate\write-1{luatex driver of PGF: detected lua version \the\luatexversion; falling back to old pdftex driver^^J}%
+ \input pgfsys-pdftex.def
+ \expandafter\endinput
\fi
% Driver commands for pdf
@@ -36,7 +37,7 @@
\raise\pgf@pt@y\hbox{%
\pgf@pt@x=0pt%
\pgf@pt@y=0pt%
- \pgflowlevelsynccm%
+ \pgflowlevelsynccm%
\pgfsys@hbox#1}%
\hss%
}%
@@ -87,13 +88,14 @@
\pgf@process{\pgfpoint{\pgf@max}{#2}}%
\immediate\saveboxresource resources {%
/Shading << /Sh << /ShadingType 2
- /ColorSpace /DeviceRGB
+ /ColorSpace \pgf@shading@device\space
/Domain [\pgf@pdfparseddomain]
/Coords [\pgf@doma\space0 \pgf@domb\space0]
/Function \pgf@pdfparsedfunction
/Extend [false false] >> >>}\pgfutil@tempboxa% <<
- \expandafter\xdef\csname @pgfshading#1!\endcsname{\leavevmode\noexpand\useboxresource\the\lastsavedboxresourceindex}%
+ \xdef\pgfutil@tempa{\hbox{\noexpand\useboxresource\the\lastsavedboxresourceindex}}%
}%
+ \global\expandafter\let\csname @pgfshading#1!\endcsname=\pgfutil@tempa
}
\def\pgfsys@vertshading#1#2#3{%
{%
@@ -103,13 +105,14 @@
\pgf@process{\pgfpoint{#2}{\pgf@max}}%
\immediate\saveboxresource resources {%
/Shading << /Sh << /ShadingType 2
- /ColorSpace /DeviceRGB
+ /ColorSpace \pgf@shading@device\space
/Domain [\pgf@pdfparseddomain]
/Coords [0 \pgf@doma\space0 \pgf@domb]
/Function \pgf@pdfparsedfunction
/Extend [false false] >> >>}\pgfutil@tempboxa% <<
- \expandafter\xdef\csname @pgfshading#1!\endcsname{\leavevmode\noexpand\useboxresource\the\lastsavedboxresourceindex}%
+ \xdef\pgfutil@tempa{\hbox{\noexpand\useboxresource\the\lastsavedboxresourceindex}}%
}%
+ \global\expandafter\let\csname @pgfshading#1!\endcsname=\pgfutil@tempa
}
\def\pgfsys@radialshading#1#2#3{%
{%
@@ -127,13 +130,14 @@
\pgf@sys@bp@correct{\pgf@ya}%
\immediate\saveboxresource resources {%
/Shading << /Sh << /ShadingType 3
- /ColorSpace /DeviceRGB
+ /ColorSpace \pgf@shading@device\space
/Domain [\pgf@pdfparseddomain]
/Coords [\pgf@sys@tonumber{\pgf@xa} \pgf@sys@tonumber{\pgf@ya} \pgf@doma\space \pgf@sys@tonumber{\pgf@x} \pgf@sys@tonumber{\pgf@y} \pgf@domb]
/Function \pgf@pdfparsedfunction
/Extend [true false] >> >>}\pgfutil@tempboxa% <<
- \expandafter\xdef\csname @pgfshading#1!\endcsname{\leavevmode\noexpand\useboxresource\the\lastsavedboxresourceindex}%
+ \xdef\pgfutil@tempa{\hbox{\noexpand\useboxresource\the\lastsavedboxresourceindex}}%
}%
+ \global\expandafter\let\csname @pgfshading#1!\endcsname=\pgfutil@tempa
}%
\def\pgfsys@functionalshading#1#2#3#4{%
{%
@@ -153,29 +157,29 @@
\pgf@xc=-\pgf@xa%
\pgf@yc=-\pgf@ya%
% Now build the function
- \pdfextension obj
+ \pdfextension obj
stream
attr
{
/FunctionType 4
/Domain [\pgf@sys@tonumber{\pgf@xa}\space\pgf@sys@tonumber{\pgf@xb}\space\pgf@sys@tonumber{\pgf@ya}\space\pgf@sys@tonumber{\pgf@yb}]
- /Range [0 1 0 1 0 1]
+ /Range [\pgf@shading@functional@range]
}
{{#4}}%
\edef\pgf@temp@num{\the\numexpr\pdffeedback lastobj\relax}%
\saveboxresource resources {%
/Shading << /Sh << /ShadingType 1
- /ColorSpace /DeviceRGB
+ /ColorSpace \pgf@shading@device\space
/Matrix [1 0 0 1 \pgf@sys@tonumber{\pgf@xc}\space\pgf@sys@tonumber{\pgf@yc}]
/Domain [\pgf@sys@tonumber{\pgf@xa}\space\pgf@sys@tonumber{\pgf@xb}\space\pgf@sys@tonumber{\pgf@ya}\space\pgf@sys@tonumber{\pgf@yb}]
- /Function \pgf@temp@num\space 0 R
+ /Function \pgf@temp@num\space 0 R
>> >>}\pgfutil@tempboxa% <<
- \expandafter\xdef\csname @pgfshading#1!\endcsname{%
- \leavevmode%
+ \xdef\pgfutil@tempa{\hbox{%
\noexpand\useboxresource\the\lastsavedboxresourceindex%
\noexpand\pdfextension refobj \pgf@temp@num%
- }%
+ }}%
}%
+ \global\expandafter\let\csname @pgfshading#1!\endcsname=\pgfutil@tempa
}
@@ -185,7 +189,7 @@
\def\pgfsys@declarepattern#1#2#3#4#5#6#7#8#9{%
% Start building the pattern dictionary:
\pgf@xa=#2\relax%
- \pgf@ya=#3\relax%
+ \pgf@ya=#3\relax%
\pgf@xb=#4\relax%
\pgf@yb=#5\relax%
\pgf@xc=#6\relax%
@@ -209,7 +213,7 @@
/YStep \pgf@sys@tonumber\pgf@yc\space
/Resources << >> %<<
}
- {#8}%
+ {#8}%
\pgfutil@addpdfresource@patterns{/pgfpat#1\space \the\numexpr\pdffeedback lastobj\relax\space 0 R}%
}
@@ -233,7 +237,7 @@
\def\pgfsys@declarepattern@meta#1#2#3#4#5#6#7{%
% Start building the pattern dictionary:
\pgf@xa=#2\relax%
- \pgf@ya=#3\relax%
+ \pgf@ya=#3\relax%
\pgf@xb=#4\relax%
\pgf@yb=#5\relax%
\pgf@xc=#6\relax%
@@ -265,7 +269,7 @@
/Matrix [#2\space#3\space#4\space#5\space\pgf@sys@tonumber\pgfutil@tempdima\space\pgf@sys@tonumber\pgfutil@tempdimb]
/Resources << >> %<<
}
- {#8}%
+ {#8}%
\pgfutil@addpdfresource@patterns{/pgfpat#1\space \the\numexpr\pdffeedback lastobj\relax\space 0 R}%
}
@@ -350,7 +354,7 @@
/CS /DeviceGray
>>
}% <<
- \pgfutil@tempboxa%
+ \pgfutil@tempboxa%
\pgfutil@addpdfresource@extgs{%
/pgfsmask\the\lastsavedboxresourceindex\space
<<
@@ -425,12 +429,12 @@
\pgfutil@addpdfresource@colorspaces{ /pgfprgb [/Pattern /DeviceRGB] }
\def\pgfsys@color@unstacked#1{%
- \pdfextension literal{\csname\string\color@#1\endcsname}%
+ \pdfextension literal{\csname\string\color@#1\endcsname}%
}
\endinput
-%%% Local Variables:
+%%% Local Variables:
%%% mode: latex
-%%% End:
+%%% End: