[gimp] libgimpcolor: use the new cmsFLAGS_COPY_ALPHA in GimpColorTransform
- From: Michael Natterer <mitch src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] libgimpcolor: use the new cmsFLAGS_COPY_ALPHA in GimpColorTransform
- Date: Sat, 2 Sep 2017 15:12:51 +0000 (UTC)
commit f59a635604b91c5ce52ae71e1fc86288f873997f
Author: Michael Natterer <mitch gimp org>
Date: Sat Sep 2 17:11:45 2017 +0200
libgimpcolor: use the new cmsFLAGS_COPY_ALPHA in GimpColorTransform
and remove all manual alpha copying.
libgimpcolor/gimpcolortransform.c | 23 +++++------------------
1 files changed, 5 insertions(+), 18 deletions(-)
---
diff --git a/libgimpcolor/gimpcolortransform.c b/libgimpcolor/gimpcolortransform.c
index f64f764..532b054 100644
--- a/libgimpcolor/gimpcolortransform.c
+++ b/libgimpcolor/gimpcolortransform.c
@@ -224,7 +224,8 @@ gimp_color_transform_new (GimpColorProfile *src_profile,
priv->transform = cmsCreateTransform (src_lcms, lcms_src_format,
dest_lcms, lcms_dest_format,
rendering_intent,
- flags);
+ flags |
+ cmsFLAGS_COPY_ALPHA);
if (lcms_last_error)
{
@@ -307,7 +308,9 @@ gimp_color_transform_new_proofing (GimpColorProfile *src_profile,
proof_lcms,
proof_intent,
display_intent,
- flags | cmsFLAGS_SOFTPROOFING);
+ flags |
+ cmsFLAGS_SOFTPROOFING |
+ cmsFLAGS_COPY_ALPHA);
if (lcms_last_error)
{
@@ -384,12 +387,6 @@ gimp_color_transform_process_pixels (GimpColorTransform *transform,
dest = dest_pixels;
}
- /* copy the alpha channel */
- if (src != dest && babl_format_has_alpha (dest_format))
- babl_process (babl_fish (src_format,
- priv->dest_format),
- src, dest, length);
-
cmsDoTransform (priv->transform, src, dest, length);
if (src_format != priv->src_format)
@@ -449,12 +446,6 @@ gimp_color_transform_process_buffer (GimpColorTransform *transform,
if (src_buffer != dest_buffer)
{
- const Babl *fish = NULL;
-
- if (babl_format_has_alpha (priv->dest_format))
- fish = babl_fish (priv->src_format,
- priv->dest_format);
-
iter = gegl_buffer_iterator_new (src_buffer, src_rect, 0,
priv->src_format,
GEGL_ACCESS_READ,
@@ -467,10 +458,6 @@ gimp_color_transform_process_buffer (GimpColorTransform *transform,
while (gegl_buffer_iterator_next (iter))
{
- /* make sure the alpha channel is copied too, lcms doesn't copy it */
- if (fish)
- babl_process (fish, iter->data[0], iter->data[1], iter->length);
-
cmsDoTransform (priv->transform,
iter->data[0], iter->data[1], iter->length);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]