[babl/wip/pippin/inverted-cmyk: 2/4] babl-icc: create double transforms to/from babl-rgb when loading cmyk profiles



commit d0f850ca5491400ffdef4dfea5c4bf901bbe9b93
Author: Øyvind Kolås <pippin gimp org>
Date:   Fri Nov 9 01:59:07 2018 +0100

    babl-icc: create double transforms to/from babl-rgb when loading cmyk profiles

 babl/babl-icc.c | 20 +++++++++-----------
 1 file changed, 9 insertions(+), 11 deletions(-)
---
diff --git a/babl/babl-icc.c b/babl/babl-icc.c
index 1ef8ad5..ed76a38 100644
--- a/babl/babl-icc.c
+++ b/babl/babl-icc.c
@@ -843,31 +843,29 @@ babl_space_from_icc (const char   *icc_data,
 
        if (sRGBProfile == 0)
        {
-         const Babl *srgb = babl_space("sRGB"); /* should use a forced linear profile */
-         sRGBProfile = cmsOpenProfileFromMem(srgb->space.icc_profile, srgb->space.icc_length);
+         const Babl *rgb = babl_space("babl-rgb"); /* should use a forced linear profile */
+         sRGBProfile = cmsOpenProfileFromMem(rgb->space.icc_profile, rgb->space.icc_length);
        }
 
        ret->space.lcms_profile = cmsOpenProfileFromMem(ret->space.icc_profile, ret->space.icc_length);
        //ret->lcms_profile_rgb = cmsOpenProfileFromMem(ret->space.icc_profile, ret->space.icc_length);
 
 /* these are not defined by lcms2.h we hope that following the existing pattern of pixel-format definitions 
work */
-#ifndef TYPE_RGBA_DBL
-#define TYPE_RGBA_DBL         (FLOAT_SH(1)|COLORSPACE_SH(PT_RGB)|EXTRA_SH(1)|CHANNELS_SH(3)|BYTES_SH(0))
-#endif
 #ifndef TYPE_CMYKA_DBL
-#define TYPE_CMYKA_DBL        (FLOAT_SH(1)|COLORSPACE_SH(PT_CMYK)|EXTRA_SH(1)|CHANNELS_SH(4)|BYTES_SH(0))
+#define TYPE_CMYKA_DBL      (FLOAT_SH(1)|COLORSPACE_SH(PT_CMYK)|EXTRA_SH(1)|CHANNELS_SH(4)|BYTES_SH(0))
+#endif
+#ifndef TYPE_RGBA_DBL
+#define TYPE_RGBA_DBL      (FLOAT_SH(1)|COLORSPACE_SH(PT_RGB)|EXTRA_SH(1)|CHANNELS_SH(3)|BYTES_SH(0))
 #endif
 
 
        ret->space.lcms_to_rgba = cmsCreateTransform(ret->space.lcms_profile, TYPE_CMYKA_DBL,
                                                     sRGBProfile, TYPE_RGBA_DBL,
-                                                    intent & 7, 0);
-       ret->space.lcms_from_rgba = cmsCreateTransform(sRGBProfile, TYPE_RGB_DBL,
+                                                    1,0);//intent & 7, 0);
+       ret->space.lcms_from_rgba = cmsCreateTransform(sRGBProfile, TYPE_RGBA_DBL,
                                                       ret->space.lcms_profile, TYPE_CMYKA_DBL,
-                                                      intent & 7, 0);
+                                                      1,0);//intent & 7, 0);
        cmsCloseProfile (ret->space.lcms_profile);
-
-       fprintf (stderr, "did a rig\n");
        return ret;
     }
 #endif


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