Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clarify precedence of A2B tags in ICC profiles #10307

Open
ccameron-chromium opened this issue Apr 29, 2024 · 0 comments
Open

Clarify precedence of A2B tags in ICC profiles #10307

ccameron-chromium opened this issue Apr 29, 2024 · 0 comments

Comments

@ccameron-chromium
Copy link
Contributor

What is the issue with the HTML Standard?

Almost all ICC profiles attached to images are matrix-based profiles, which specify only a curve and matrix to convert to the profile connection space (almost always XYZD50, but sometimes Lab).

ICC profiles can include also specify A2B mappings. The A2B mappings provide a more expressive (but still deterministic!) way of mapping from pixel values to the profile connection space (in particular, a sequence of curves, matrices, and 3D lookup tables). ICC profiles can specify several A2B mappings (see Table 25 in the ICC space). The most common are A2B0 (perceptual) and A2B1 (relative).

If an image specifies multiple A2B mappings, the user agent must decide which mapping should take precedence. At present, WebKit gives A2B1 precedence over A2B0, while Chromium and Gecko give A2B0 precedence over A2B1. This should be resolved one way or the other.

See the attached test image. The A2B0 mapping produces bars that are "grey, green, red, blue". The A2B1 mapping produces bars that are "grey, blue, green, red".

test-a2b0-a2b1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

2 participants