Bug 688638 - Make ROPs and overprinting compaitble
Summary: Make ROPs and overprinting compaitble
Status: RESOLVED LATER
Alias: None
Product: Ghostscript
Classification: Unclassified
Component: Color (show other bugs)
Version: master
Hardware: All All
: P4 normal
Assignee: Michael Vrhel
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-04-06 12:12 UTC by Dan Coby
Modified: 2011-07-21 14:43 UTC (History)
3 users (show)

See Also:
Customer:
Word Size: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dan Coby 2006-04-06 12:12:03 UTC
This report is due to the discussion from a bug scrub meeting about 688068. 
This issue is being separated from that bug report since it is only a side 
issue to that report.

Bug 688068 was caused by changes made by Stefan to get ROPs working for 
GhostPCL.  However the change is not compatible with the requirements for 
proper operation of overprinting.

Current versions of Ghostscript use the encode_color and decode_color device 
procedures for converting between color values and the device's pixel encoding 
(gx_color_index values).  These procedures were added with version 8.0.  This 
version brought in support for more than Gray, RGB, and CMYK process color 
model.  This version also brought in support for overprinting.

Prior to 8.0, pixel encoding was done via either the 
map_rgb_color/map_color_rgb or map_cmyk_color/map_color_cmyk device procedure 
pairs.

To maintain compatiblity with older devices which do not have the the 
encode_color/decode_color device procedures, the older procedures may be used 
instead.

ROPs require that all calculations be done in an RGB color space.  Stefan's 
changes made the 'decode_color' routine return RGB for the bitcmyk device.  
This works for ROPs but not for overprinting.

Previous disccussions have suggested that the way to procede on this issue is 
to make the old map_color_rgb procedure always be logically present.  This 
procedure is not currently prsent for most CMYK devices.  Thus a new default 
procedure needs to be created that will work for these devices.  The biggest 
part of this task is testing devices.
Comment 1 Henry Stiles 2008-03-25 10:13:15 UTC
This problem should be fixed by implementing the rop compositor.  A partial
implementation was removed in rev 8447.  If this were done it would not be
necessary to support the old color mapping functions as suggested in the
description above.
Comment 2 Shailesh Mistry 2011-07-20 17:55:21 UTC
Bug still reproducible in Ghostscript 9.03
Comment 3 Henry Stiles 2011-07-21 14:43:23 UTC
Into "Laterland"