1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
/* GIMP - The GNU Image Manipulation Program
* Copyright (C) 1995 Spencer Kimball and Peter Mattis
*
* gimpimage-color-profile.h
* Copyright (C) 2015 Michael Natterer <mitch@gimp.org>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
#ifndef __GIMP_IMAGE_COLOR_PROFILE_H__
#define __GIMP_IMAGE_COLOR_PROFILE_H__
#define GIMP_ICC_PROFILE_PARASITE_NAME "icc-profile"
gboolean gimp_image_get_is_color_managed (GimpImage *image);
void gimp_image_set_is_color_managed (GimpImage *image,
gboolean is_color_managed,
gboolean push_undo);
gboolean gimp_image_validate_icc_parasite (GimpImage *image,
const GimpParasite *icc_parasite,
gboolean *is_builtin,
GError **error);
const GimpParasite * gimp_image_get_icc_parasite (GimpImage *image);
void gimp_image_set_icc_parasite (GimpImage *image,
const GimpParasite *icc_parasite);
gboolean gimp_image_validate_icc_profile (GimpImage *image,
const guint8 *data,
gsize length,
gboolean *is_builtin,
GError **error);
const guint8 * gimp_image_get_icc_profile (GimpImage *image,
gsize *length);
gboolean gimp_image_set_icc_profile (GimpImage *image,
const guint8 *data,
gsize length,
GError **error);
gboolean gimp_image_validate_color_profile (GimpImage *image,
GimpColorProfile *profile,
gboolean *is_builtin,
GError **error);
GimpColorProfile * gimp_image_get_color_profile (GimpImage *image);
gboolean gimp_image_set_color_profile (GimpImage *image,
GimpColorProfile *profile,
GError **error);
gboolean gimp_image_validate_color_profile_by_format
(const Babl *format,
GimpColorProfile *profile,
gboolean *is_builtin,
GError **error);
GimpColorProfile * gimp_image_get_builtin_color_profile
(GimpImage *image);
gboolean gimp_image_convert_color_profile (GimpImage *image,
GimpColorProfile *dest_profile,
GimpColorRenderingIntent intent,
gboolean bpc,
GimpProgress *progress,
GError **error);
void gimp_image_import_color_profile (GimpImage *image,
GimpContext *context,
GimpProgress *progress,
gboolean interactive);
GimpColorTransform * gimp_image_get_color_transform_to_srgb_u8
(GimpImage *image);
GimpColorTransform * gimp_image_get_color_transform_from_srgb_u8
(GimpImage *image);
GimpColorTransform * gimp_image_get_color_transform_to_srgb_double
(GimpImage *image);
GimpColorTransform * gimp_image_get_color_transform_from_srgb_double
(GimpImage *image);
void gimp_image_color_profile_pixel_to_srgb
(GimpImage *image,
const Babl *pixel_format,
gpointer pixel,
GimpRGB *color);
void gimp_image_color_profile_srgb_to_pixel
(GimpImage *image,
const GimpRGB *color,
const Babl *pixel_format,
gpointer pixel);
/* internal API, to be called only from gimpimage.c */
void _gimp_image_free_color_profile (GimpImage *image);
void _gimp_image_free_color_transforms (GimpImage *image);
void _gimp_image_update_color_profile (GimpImage *image,
const GimpParasite *icc_parasite);
#endif /* __GIMP_IMAGE_COLOR_PROFILE_H__ */
|