Hi!
Am 30.10.19 um 10:53 schrieb Peter Geerds:
[...]
>
> Anhänge werden auf dieser Mailingliste nicht durchgelassen.
>
Sorry, habe das erst jetzt gesehen.
Hier ist das Script also "inline":
%!
/oldsetrgbcolor /setrgbcolor load def
/setrgbcolor {
(in replacement setrgbcolor\n) print
%% R G B
1 index 1 index %% R G B G B
eq { %%
2 index 1 index %% R G B R B
eq {
%% Here if R = G = B
pop pop %% remove two values
% setgray % "replace the 'setgray' with":
0 0 0 4 -1 roll % setcmykcolor
-1 mul %% obtain -R on top of stack
1 add %% obtain 1-R on top of stack
setcmykcolor %% now set(cmykcolor) K (as 1-R)
} {
oldsetrgbcolor %% set the RGB values
} ifelse
}{
oldsetrgbcolor %% Set the RGB values
currentcmykcolor %puts 4 numbers on the stack
(cmyk-) print pstack %display the colors (remove when things work correctly)
3 -1 roll %put magenta on top of stack
dup %make copy of magenta value
.5 %put magenta test value on stack (then may not be
exactly .5, see pstack)
eq %see of magenta is equal to test value (.5)
{pop 1}if %if it is equal, pop off the .5 and put a 1 onto the
stack
3 1 roll %put magenta back where it belongs in the stack
setcmykcolor %reset the cmyk to have new magenta value
}ifelse
} bind def
/oldsetgray /setgray load def
/setgray {
(in replacement setgray\n) print
% == % debug: pop last element and print it
% here we're at a gray value;
% http://www.tailrecursive.org/postscript/operators.html#setcymkcolor
% setgray: "gray-value must be a number from 0 (black) to 1 (white)."
% setcymkcolor: "The components must be between 0 (none) to 1 (full)."
% so convert here again:
0 0 0 4 -1 roll % push CMY:000 after Gray and roll down,
% so top of stack becomes
% ...:C:M:Y:Gray
-1 mul %% obtain -Gray on top of stack
1 add %% obtain 1-Gray on top of stack
setcmykcolor %% now set(cmykcolor) K (as 1-Gray)
} bind def
Die Zeilen mit "print" am Ende sind nur Debug-Ausgaben und
können bei Bedarf auskommentiert werden.
HTH
- andreas
--
Andreas Haumer | mailto:[email protected]
*x Software + Systeme | http://www.xss.co.at/
Karmarschgasse 51/2/20 | Tel: +43-1-6060114-0
A-1100 Vienna, Austria | Fax: +43-1-6060114-71
--
Liste abmelden mit E-Mail an: [email protected]
Probleme?
https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy