Right. And it was never intended to allow an app to provide the CMM .. it was just
for choosing between built-in ones.

We probably can ditch the code that reads the property now since it hasn't had any purpose since (IIRC) JDK 9.

Perhaps - if you believe it is really a LCMS issue, that you start by reporting your problem to
the upstream littlecms project.

But if it is a JDK-specific issue in the way we use LCMS or the profiles bundled with OpenJDK then you should file a JDK bug report at https://bugreport.java.com/bugreport/

-phil.

On 8/10/22 9:36 AM, Alexey Ushakov wrote:
Hello Alex,

This option (-Dsun.java2d.cmm ) was implemented to switch between proprietary Color Management library from Kodak and open source Little CMS during transition JDK to open source (See https://bugs.openjdk.org/browse/JDK-6476534 for more info). Another candidate was Sample ICC (https://www.color.org/sampleicc.xalter) but it is C++ not java.

Best Regards,
Alexey

On 6 Jul 2022, at 23:24, Alex Andryushkin <[email protected]> wrote:

Hello,

I am sorry for the wide distribution or if I am reaching out to the wrong group.

I am running into issues with using awt/java2d color conversion between ICC profiles. It seems to be boiling down to the native library (little-csm) used in java2d.cmm.lcms by default. At the same time I think there is an option -Dsun.java2d.cmm defaulting to sun.java2d.cmm.lcms.LcmsServiceProvider, hence it feels that there could be other providers, hopefully not dependent on little-csm. But I was not able to find any.

Question: Are there known alternatives to sun.java2d.cmm.lcms.LcmsServiceProvider, which can be used as an override, with -Dsun.java2d.cmm option. Preferably a pure-java implementation, even though it will be slower.

Thank you,
~ Alex.

Reply via email to