Method
VipsImageicc_transform
Declaration [src]
int
vips_icc_transform (
VipsImage* in,
VipsImage** out,
const char* output_profile,
...
)
Description [src]
Optional arguments:
pcs
:VipsPCS
, use XYZ or LAB PCSintent
:VipsIntent
, transform with this intentblack_point_compensation
: %gboolean, enable black point compensationembedded
: %gboolean, use profile embedded in input imageinput_profile
: %gchararray, get the input profile from heredepth
: %gint, depth of output image in bits
Transform an image with a pair of ICC profiles. The input image is moved to profile-connection space with the input profile and then to the output space with the output profile.
If embedded
is set, the input profile is taken from the input image
metadata, if present. If there is no embedded profile,
input_profile
is used as a fall-back.
You can test for the
presence of an embedded profile with
vips_image_get_typeof()
with #VIPS_META_ICC_NAME as an argument. This will
return %GType 0 if there is no profile.
If embedded
is not set, the input profile is taken from
input_profile
. If input_profile
is not supplied, the
metadata profile, if any, is used as a fall-back.
If black_point_compensation
is set, LCMS black point compensation is enabled.
The output image has the output profile attached to the #VIPS_META_ICC_NAME field.
Use vips_icc_import()
and vips_icc_export()
to do either the first or
second half of this operation in isolation.
This method is not directly available to language bindings. |
Parameters
out |
VipsImage |
Output image. |
|
The argument will be set by the function. | |
The instance takes ownership of the data, and is responsible for freeing it. | |
output_profile |
const char* |
Get the output profile from here. |
|
The data is owned by the caller of the function. | |
The value is a NUL terminated UTF-8 string. | |
... |
|
|