[poppler] Implementing overprint in Splash

Thomas Freitag Thomas.Freitag at kabelmail.de
Mon Mar 28 11:05:21 PDT 2011

Here now a first implementation of overprint in poppler.

Thanks a lot for the advice from Leonard. Beside sections 8.6.7 and 
11.7.4 of ISO 32000-1:2008 the explanations from the "Ghent Output 
Suite" from the "Ghent PDF Workgroup" were very helpful.

The patch consists of 3 different parts
- implementation of new options "overprint" and "jpegcmyk" in pdftoppm, 
which both switch on overprinting
- adding support for "DefaultCMYK", "DefaultRGB" and "DefaultGray" in 
Gfx.cc, needed for correct overprinting (s. patch 11.0 from Ghent), and 
adding support for "OPM" (overprint mode) in Gfx.cc and GfxState.cc), 
already introduced in PDF 1.3, but propbably missed.
- implementation of overprint in Splash, splashModeCMYK8

Open issues:
- overprint does not work or does not work correctly if spot colorants 
are overprinted. This comes due to the fact that spot colorants 
(separation colorspace or spot colorants in DeviceN colorspaces) are 
immediately converted to their alternative process colorants, 
splashModeCMYK8 does not keep track of them. Therefore it is not 
distinguishable if the CMYK values in the bitmap are produced by spot or 
by cmyk or by both, which is necessary to implement overprinting 
correctly (s i.e. patch 2.0 from Ghent, upper line). This could not or 
probably only hard be implemented in splashModeCMYK8, a good idea would 
probably be to implement a splashModeDeviceN which creates a spot bitmap 
for every spot colorant find on a page and combine all colorants after 
completely rendered the page to i.e. a CMYK or RGB output. But this must 
be a futur project.
- overprinting is not implemented in the transparent imaging model yet. 
One reason for this was that I didn't find good samples for it like 
there is the "Ghent Output Suite" for the opaque imaging model. I think 
we can wait for the draft of 32000-2 will become public and / or 
implement it in splashModeDeviceN.

But beside this open issues the output seems to be quite well and shows 
a better output. I tested round about 100 PDFs and over 1000 pages, and 
found only problems in the "Ghent Output Suite" when overprinting spot 
colorants. All "normal" PDFs work great, make some small fonts or logos 

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: overprint.patch
URL: <http://lists.freedesktop.org/archives/poppler/attachments/20110328/04865f3d/attachment-0001.txt>

More information about the poppler mailing list