• Albert Astals Cid's avatar
    [xpdf] More Splash and Gfx changes from Thomas · 9c092e17
    Albert Astals Cid authored
    1. merge of blend changes
    Here I had not only merged the changed in blend modes, I made also a few
    changes in the SPLASH_CMYK area, so that the already sent PDF now also
    be rendered correctly with the -jpegcmyk option
    2. merge of font handling in SplashOutputDev.cc
    There were a few changes left in font handling, I took them over
    3. merge of getcolor-changes
    The getcolor changes win a price for well defined C++ code. I wouldn't
    have merged them, if there were not a lot of other things to merge.
    4. merge of image handling in SplashOutputDev.cc
    I merged the left changes in image handling including colorizing masks
    in pattern colorspace
    5. cleanup of overprint
    I tested the overprint implementation of Derek. They succeed only in 70
    % percent of the PDF where my solution had success, but Derek's solution
    is much cleaner, and I'm sure that I could also fix the rest in it. BUT:
    as I already considered, when I implemented overprint, there are some
    overprint situations, which can not be solved in a CMYK colorspace, we
    have to implement a DeviceN colorpace when also overprint from CMYK
    colors over spot colors should work. Therefore I decided to remove my
    overprint implementation completely from the code and let Derek's
    solution in, even if there could be done some enhancements in it.
    6. colorizing text in pattern colorspace
    When I saw Derek's implementation with a clean interface only at one
    place in Gfx.cc, I first was very surprised. My solution had a lot of
    places in Gfx.cc, where I looked if the current colorspace is a pattern
    colorspace. Therefore I first had a look into the PDF specification
    again, and really, it can be done in the way of Derek. Therefore I
    merged it and removed the fragments of my code.
    On this step I started a regtest against the version after the fourth
    patch. There were a lot of enhancements, especially in texts with
    symbolic chars like mathematical and so on, but there was one (and ONLY
    one) regression, shown in bug-poppler27482.pdf
    I examined that (that is also the reason for the delay) and encountered
    that on merging I removed my solution for this bug, therefore
    7. insert enhancements for colorizing masks in pattern colorspace
    I adapt the bug fix from bug 27482 to the merge.
SplashPattern.cc 1.52 KB