[gimp] Fixed #6109 for saving color profile on each tiff layer
- From: Jacob Boerema <jboerema src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] Fixed #6109 for saving color profile on each tiff layer
- Date: Wed, 6 Jan 2021 20:32:26 +0000 (UTC)
commit 2dd61d4613eabaebbb9091d16930e8b65541ce81
Author: Shaylin Chetty <shaylin chetty protonmail com>
Date: Tue Dec 22 15:47:08 2020 +0200
Fixed #6109 for saving color profile on each tiff layer
plug-ins/file-tiff/file-tiff-save.c | 26 ++++++++++++++++++--------
1 file changed, 18 insertions(+), 8 deletions(-)
---
diff --git a/plug-ins/file-tiff/file-tiff-save.c b/plug-ins/file-tiff/file-tiff-save.c
index 161b896a69..bf44594d25 100644
--- a/plug-ins/file-tiff/file-tiff-save.c
+++ b/plug-ins/file-tiff/file-tiff-save.c
@@ -321,11 +321,13 @@ save_layer (TIFF *tif,
gint config_compression;
gboolean config_save_transp_pixels;
gboolean config_save_geotiff_tags;
+ gboolean config_save_profile;
g_object_get (config,
"compression", &config_compression,
"save-transparent-pixels", &config_save_transp_pixels,
"save-geotiff", &config_save_geotiff_tags,
+ "save-color-profile", &config_save_profile,
NULL);
compression = gimp_compression_to_tiff_compression (config_compression);
@@ -633,6 +635,22 @@ save_layer (TIFF *tif,
}
}
+#ifdef TIFFTAG_ICCPROFILE
+ if (config_save_profile)
+ {
+ const guint8 *icc_data;
+ gsize icc_length;
+ GimpColorProfile *profile;
+
+ profile = gimp_image_get_effective_color_profile (orig_image);
+
+ /* Write the profile to the TIFF file. */
+ icc_data = gimp_color_profile_get_icc_profile (profile, &icc_length);
+ TIFFSetField (tif, TIFFTAG_ICCPROFILE, icc_length, icc_data);
+
+ g_object_unref (profile);
+ }
+#endif
/* Set TIFF parameters. */
if (num_pages > 1)
@@ -1087,12 +1105,9 @@ save_image (GFile *file,
TIFFSetField (tif, TIFFTAG_IMAGEDESCRIPTION, config_comment);
}
-#ifdef TIFFTAG_ICCPROFILE
if (config_save_profile)
{
GimpColorProfile *profile;
- const guint8 *icc_data;
- gsize icc_length;
GError *error = NULL;
profile = gimp_image_get_effective_color_profile (orig_image);
@@ -1103,10 +1118,6 @@ save_image (GFile *file,
*/
out_linear = (gimp_color_profile_is_linear (profile));
- /* Write the profile to the TIFF file. */
- icc_data = gimp_color_profile_get_icc_profile (profile, &icc_length);
- TIFFSetField (tif, TIFFTAG_ICCPROFILE, icc_length, icc_data);
-
space = gimp_color_profile_get_space (profile,
GIMP_COLOR_RENDERING_INTENT_RELATIVE_COLORIMETRIC,
&error);
@@ -1121,7 +1132,6 @@ save_image (GFile *file,
g_object_unref (profile);
}
-#endif
/* we put the whole file's thumbnail into the first IFD (i.e., page) */
if (config_save_thumbnail)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]