BUG: 359909
The default rendering intent should be one which does not distort those colors which are capable of being reproduced on a viewer's screen. The change introduced by the perceptual rendering intent affects all colors. It does this in order to squeeze them into the target gamut - how much it changes them depends on the gamut and on the mapping strategy. This means that if the user is using a monitor color profile which supports the perceptual rendering intent mapping and the viewer's gamut and screen colors are significantly off from the image's color space (which is typically the case), then all of the colors in the image will have been shifted and will look wrong.
If that sounds serious, that's because it is. If you're wondering why a serious issue like this has not been reported yet, it's because most monitor profiles don't contain the perceptual intent mapping, so most users of color-managed systems won't bump into this problem. One must go an extra step to include the perceptual mapping in the monitor profile. If the perceptual mapping does not exist in the monitor profile, Gwenview will revert to relative colorimetric, even though Gwenview is currently hard-coded to use INTENT_PERCEPTUAL by default.
As a first step, please accept this patch, which un-breaks Gwenview's colors when using a monitor profile which includes the perceptual mapping. This patch makes no difference to users of profiles which do not include the perceptual mapping, and it fixes things for users who do have profiles which include the perceptual mapping.
Ultimately, Gwenview should allow the user to select:
- a custom monitor profile using a filechooser (please don't force the user to use a color management system like colord or oyranos or kolor-manager etc, a filechooser is simple and fool-proof),
- a rendering intent (relative colorimetric should be the default, perceptual should be an option, and the other two - absolute colorimetric and saturation - are uncommon. Though it wouldn't hurt to include them as options in a combobox, they only really make sense when softproofing, and Gwenview is not designed for softproofing, so IMHO they can be skipped).
- black point compensation on/off.
But those things are for another issue.
Reference: https://bugs.kde.org/show_bug.cgi?id=359909