Re: Fix for 687534 Unable to determine equivalent CMYKfor spot colors that are only used with overprint
"Igor V. Melichev" <[email protected]> Wed, 23 Jun 2004 12:16:43 +0400
| Newsgroups | gmane.comp.printing.ghostscript.patches |
|---|---|
| Message-ID | <[email protected]> |
Dan, I have one objection : +#define dev_t_proc_update_spot_equivalent_colors(proc, dev_t)\ + void proc(dev_t *dev, const gs_state * pgs) The return type 'void' isn't safe, because some implementations will write to the output file and may fail with an IO error. > The high level drawing handlers in the > psdcmyk devices were removed This closes the recent discussion about them. Igor. ----- Original Message ----- From: "Dan Coby" <[email protected]> To: "Gs-Code-Review" <[email protected]> Sent: Wednesday, June 23, 2004 10:47 AM Subject: [gs-code-review] Fix for 687534 Unable to determine equivalent CMYKfor spot colors that are only used with overprint > > Fix for 687534 Unable to determine equivalent CMYK for spot colors > that are only used with overprint. > > DETAILS: > > The given test file uses spot colors. However the psdcmyk device > was creating output files which did not contain equivalent CMYK > colors for the spot colors. The cause was that the previous > version of the logic was capturing the equivalent CMYK colors > when the psdcmyk device's high drawing procs were called. However > if overprinting is enabled, then the overprint device was inserting > its own versions of these routines. Since it only took one call > to a high level drawing handler, the previous logic would capture > the equivalent CMYK colors if there were any drawing operations > with a spot color that did not have overprinting enabled. > > The fix consists of moving the capturing of the equivalent CMYK > colors to a new device proc. This new device proc is called > update_spot_equivalent_colors. This device proc is called whenever > a Separation or a DeviceN color space is installed. > > The default version of the proc does nothing. Thus there is only > a small amount of overhead added for the installation of Separation > and DeviceN color spaces for devices which do not need the equivalent > CMYK colors for spot colors. > > Most of the change consists of the standard details of adding a > new device proc. There are several places that have to be updated > when this is done. The documentation in doc/Drivers.htm was updated > to include this new proc. The high level drawing handlers in the > psdcmyk devices were removed and a new psd_update_spot_equivalent_colors > procedure was added. Some minor changes were made in the logic in > gsequivc.c since it is no longer necessary to scan through base and > alternate color spaces looking for Separation and DeviceN color spaces. > The comments at the beginning of gsequivc.c was changed to reflect > the changes in the logic for capturing equivalent CMYK colors for > spot colors. > > > Dan > > -------------------------------------------------------------------------------- > _______________________________________________ > gs-code-review mailing list > [email protected] > http://www.ghostscript.com/mailman/listinfo/gs-code-review >