Re: [Gimp-developer] How to retrieve the monitor profile from inside a plug-in

On Tue, 2016-09-06 at 16:47 +0200, Carmelo DrRaw wrote:

On 06 Sep 2016, at 16:41, Michael Natterer <mitch gimp org> wrote:

On Tue, 2016-09-06 at 16:30 +0200, Carmelo DrRaw wrote:

In GIMP git master, you would say

gimp_preview_area_set_color_config (gimp_preview_get_area

Thanks! However, I assume that the ICC conversion is done in this
case using 8-bits precision, right?

I would like to take advantage of the fact that G’MIC handles
floating-point precision, by doing the ICC conversion before the
conversion to 8-bits…

Moreover, this API only makes sure an assumed-to-be-sRGB image
is displayed correctly in 8 bit.

You can omit this call, and feed color-corrected pixels to
the preview directly, look at the GimpColorTransform API
in libgimpcolor, which is a simple wrapper around lcms
(which you don't need to use at all).

For the image profile, use gimp_image_get_effective_color_profile(),

for getting the transform, best use gimp_widget_get_color_transform()
which will look up the right display profile by itself.

Also, use gimp_widget_track_monitor() so you can recreate
the transform when the window is moved to another monitor.

For example code, grep for


in libgimpwidgets/ and app/widgets/


My question was if this is a plug-in against GIMP 2.8 (soon
or against GIMP git master.

I wouldn't bother do add color management to a GIMP 2.8 plug-in
and I have never tried.

I see… G’MIC is already adapted to high bit depth and 2.9 API, so I
think it is worth adding proper color management.


gimp-developer-list mailing list
List address:    gimp-developer-list gnome org
List membership:
List archives:

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]