summaryrefslogtreecommitdiff
path: root/Master/tlpkg/tlgs/Resource/Init/gs_lev2.ps
diff options
context:
space:
mode:
Diffstat (limited to 'Master/tlpkg/tlgs/Resource/Init/gs_lev2.ps')
-rw-r--r--Master/tlpkg/tlgs/Resource/Init/gs_lev2.ps58
1 files changed, 10 insertions, 48 deletions
diff --git a/Master/tlpkg/tlgs/Resource/Init/gs_lev2.ps b/Master/tlpkg/tlgs/Resource/Init/gs_lev2.ps
index eee0b9f6175..72c11edb4a1 100644
--- a/Master/tlpkg/tlgs/Resource/Init/gs_lev2.ps
+++ b/Master/tlpkg/tlgs/Resource/Init/gs_lev2.ps
@@ -163,8 +163,7 @@ end
% Set them again to the new values. From here on, we are safe,
% since a context switch will consult userparams.
.setuserparams
-} .bind executeonly def % must be bound and hidden for .forceput
-
+} .bind def
/setuserparams { % <dict> setuserparams -
.setuserparams2
} .bind odef
@@ -1073,10 +1072,10 @@ def
% the values given into an array. This is consistent with what we see when
% testing with Adobe Distiller 6.0.
% <cyan> <magenta> <yellow> <black> <key> findcmykcustomcolor <array>
-/findcmykcustomcolor { 5 array astore } bind executeonly def
+/findcmykcustomcolor { 5 array astore } bind def
% The following isn't documented by Adobe, but was found in Adobe Illustrator (R)
% Version 7.0 Full Prolog
-/findrgbcustomcolor { 4 array astore } bind executeonly def
+/findrgbcustomcolor { 4 array astore } bind def
% Build a tint transform function for use by setcustomcolor. This function
% is for a Separation color space which has either a DeviceCMYK base color space
@@ -1105,7 +1104,7 @@ def
]
} ifelse
cvx bind exch pop % Make executable and remove the input array
-} bind executeonly def
+} bind def
% Construct the colorspace array to be used by setcolorspace from the array
% result of either findcmykcustomcolor or findrgbcustomcolor.
@@ -1125,7 +1124,7 @@ def
]
} ifelse
exch pop % remove the input array
-} bind executeonly def
+} bind def
% Set a custom color based upon a tint and array which describes the custom
% color. See findcmykcustomcolor. First we create and then set a Separation
@@ -1134,51 +1133,14 @@ def
% for some reason, so an alternate operational mode is tolerated:
% null setcustomcolor -
/setcustomcolor % <array> <tint> setcustomcolor -
-{
- dup //null eq {
- pop pop
- }{
- % Check that the tint is a number between 0 and 1
- dup type dup /integertype eq exch /realtype eq or not {
- /setcustomcolor /typecheck cvx signalerror
- } if
- dup 1 le not {
- /setcustomcolor /rangecheck cvx signalerror
- } if
- dup 0 ge not {
- /setcustomcolor /rangecheck cvx signalerror
- } if
-
- % The array is supposed to be the result of fundcmykcustomcolor. Our
- % implementation just pushes all the arguments into the array and that's
- % what buildcolorspacearray expects. So check that now.
- % Starting with the first N-1 elemenst which must be numbers where 0 <= x <= 1
- 1 index
- 0 1 2 index length 2 sub
- {
- 1 index exch get dup
- type dup /integertype eq exch /realtype eq or not {
- /setcustomcolor /typecheck cvx signalerror
- } if
- dup
- 1 le not {
- /setcustomcolor /rangecheck cvx signalerror
- } if
- 0 ge not {
- /setcustomcolor /rangecheck cvx signalerror
- } if
- } for
-
- % Finally, check the last element of the array, which must be a string.
- dup length 1 sub get type /stringtype eq not {
- /setcustomcolor /typecheck cvx signalerror
- } if
-
+{ dup //null ne {
exch //buildcolorspacearray exec
setcolorspace % Set the Separation color space as current
setcolor % Set the tint as the current color
- } ifelse
-} bind executeonly def
+ }
+ { pop pop } % 'null' as the tint is ignored. pop tint and array
+ ifelse
+} bind def
% This proc is supposed to implement a version of overprinting. TN 5044 says
% that this proc is not used by any shipping host-based application. We have