RFR: JDK-8347377 : Add validation checks for ICC_Profile header fields [v3]

Harshitha Onkar honkar at openjdk.org
Wed Feb 5 19:52:45 UTC 2025


On Mon, 27 Jan 2025 09:59:30 GMT, Sergey Bylokhov <serb at openjdk.org> wrote:

>>> Since you already mentioned "non-ICC intent", please specify the part of the specification in ICC.1-2022-05 where their use is prohibited.
>> 
>> @mrserb 
>> The ICC Spec doesn't explicitly say that certain values are prohibited. Although it does not list Non-ICC Intent values under Rendering Intent (pg#23, Table 23) either.
>> 
>> What do you suggest is the best solution here to address the difference in ICC Spec Doc vs LCMS API doc? 
>> 
>> 1. Add the missing constants present in LCMS API doc to Java?
>> 2. Or skip validating Rendering Intent? 
>> 3. Since Color Space has few extra constants in LCMS API do we need to address it too?
>> 
>> @prrace Can you please suggest how to address Sergey's concern, since the last time we discussed we agreed to follow ICC Spec Doc.
>> 
>>> there may be a reason why the most common library for icc profiles accepts that data. We shouldn't be more strict than that, it will limit java applications compared to the alternatives.
>
>>Add the missing constants present in LCMS API doc to Java?
> 
> No, we definitely don't need to add any custom values ​​to the Java API, the question is whether we need to reject them or not, since the ICC specification allows it(?).

@mrserb 

The ICC Spec Doc states just 4 values for rendering intent (Table#23)
Perceptual : 0
Media-relative colorimetric : 1
Saturation : 2
ICC-absolute colorimetric : 3 

> the question is whether we need to reject them or not, since the ICC specification allows it(?).

I did not come across any statement in ICC Spec doc that states other RenderingIntents are allowed.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/23044#discussion_r1943571878


More information about the client-libs-dev mailing list