Details

    • Type: Sub-task
    • Status: Closed
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.8.0-incubator
    • Component/s: None
    • Labels:
      None

      Description

      The ICC profiles in src/main/resources/Resources/colorspace-profiles are licensed under the Sun Binary Code License that doesn't satisfy the Open Source Definition and is thus can not be distributed by an Apache project.

      The ICC profiles (more accurately just the CMYK profile) are used by the o.a.p.pdmodel.graphics.color.PDDeviceCMYK class. Would it be possible for us to get the CMYK color profile from somewhere with a different license? Alternatively, is there some other way we could avoid using the CMYK profile or perhaps automatically locate and (if available) use it only in the runtime environment?

      In any case we need to drop the current ICC profiles from src/main/resources/Resources/colorspace-profiles.

      1. DeviceCMYK_392.txt
        6 kB
        Andreas Lehmkühler

        Activity

        Hide
        jukkaz Jukka Zitting added a comment -

        I removed the troublesome ICC profiles in revision 723183.

        This change breaks the PDDeviceCMYK class. To make it work, a user needs to explicitly place the CMYK.pf file in the classpath or file system at Resources/colorspace-profiles/CMYK.pf.

        Unless someone has a better idea on how to fix this, I suggest that we simply resolve this issue as fixed for 0.8.0 and include a warning about the change in the release notes.

        Show
        jukkaz Jukka Zitting added a comment - I removed the troublesome ICC profiles in revision 723183. This change breaks the PDDeviceCMYK class. To make it work, a user needs to explicitly place the CMYK.pf file in the classpath or file system at Resources/colorspace-profiles/CMYK.pf. Unless someone has a better idea on how to fix this, I suggest that we simply resolve this issue as fixed for 0.8.0 and include a warning about the change in the release notes.
        Hide
        lehmi Andreas Lehmkühler added a comment -

        I've found some code to replace the ICC-Profile dependency, so that this won't be a problem anymore. It's licensed under the GPL.

        Show
        lehmi Andreas Lehmkühler added a comment - I've found some code to replace the ICC-Profile dependency, so that this won't be a problem anymore. It's licensed under the GPL.
        Hide
        jukkaz Jukka Zitting added a comment -

        GPL is also troublesome for Apache projects, see http://www.apache.org/legal/resolved.html.

        Show
        jukkaz Jukka Zitting added a comment - GPL is also troublesome for Apache projects, see http://www.apache.org/legal/resolved.html .
        Hide
        lehmi Andreas Lehmkühler added a comment -

        OK, I already remembered something like that. So finally I've to write my own code.

        Show
        lehmi Andreas Lehmkühler added a comment - OK, I already remembered something like that. So finally I've to write my own code.
        Hide
        lehmi Andreas Lehmkühler added a comment -

        I made a patch to avoid using the ICC-Profiles coming with JAI. The needed colorspaces are used in PDFBox to convert colorvalues from a soucre colorspace coming with the pdf-document to the default-colorspace sRGB or CIEXYZ for displaying and printing the pdf-document. To do so, I wrote a new class for the needed conversions. It inherits from java.awt.color.ColorSpace and doesn't use any ICC-Profile.

        Perhaps in future we will come back to this point. These profiles are interesting for dispalying documents on calibrated monitors or printing on calibrated printers. This feature has to be configurable during the runtime or by a configuration-file divided in printing and displaying. But I think, there are many other issues to solve and features to implement which are more important for the moment.

        Show
        lehmi Andreas Lehmkühler added a comment - I made a patch to avoid using the ICC-Profiles coming with JAI. The needed colorspaces are used in PDFBox to convert colorvalues from a soucre colorspace coming with the pdf-document to the default-colorspace sRGB or CIEXYZ for displaying and printing the pdf-document. To do so, I wrote a new class for the needed conversions. It inherits from java.awt.color.ColorSpace and doesn't use any ICC-Profile. Perhaps in future we will come back to this point. These profiles are interesting for dispalying documents on calibrated monitors or printing on calibrated printers. This feature has to be configurable during the runtime or by a configuration-file divided in printing and displaying. But I think, there are many other issues to solve and features to implement which are more important for the moment.
        Hide
        jukkaz Jukka Zitting added a comment -

        Patch applied in revision 730126.

        Show
        jukkaz Jukka Zitting added a comment - Patch applied in revision 730126.

          People

          • Assignee:
            jukkaz Jukka Zitting
            Reporter:
            jukkaz Jukka Zitting
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development