digiKam Developer Documentation
Professional Photo Management with the Power of Open Source
Loading...
Searching...
No Matches
Digikam::IccTransform Class Reference

Public Types

enum  RenderingIntent { Perceptual = 0 , RelativeColorimetric = 1 , Saturation = 2 , AbsoluteColorimetric = 3 }
 

Public Member Functions

 IccTransform (const IccTransform &other)
 
bool apply (DImg &image, DImgLoaderObserver *const observer=nullptr)
 Apply this transform with the set profiles and options to the image.
 
bool apply (QImage &qimage)
 Apply this transform to the QImage.
 
QColor checkGamutMaskColor () const
 
void close ()
 Closes the transform, not the profiles.
 
IccProfile effectiveInputProfile () const
 Returns the embedded profile; if none is set, the input profile; if none is set, sRGB.
 
IccProfile embeddedProfile () const
 Returns the contained profiles.
 
IccProfile inputProfile () const
 
RenderingIntent intent () const
 
bool isCheckingGamut () const
 
bool isUsingBlackPointCompensation () const
 
IccTransformoperator= (const IccTransform &other)
 
IccProfile outputProfile () const
 
RenderingIntent proofIntent () const
 
IccProfile proofProfile () const
 
void setCheckGamut (bool checkGamut)
 
void setCheckGamutMaskColor (const QColor &color)
 
void setDoNotEmbedOutputProfile (bool doNotEmbed)
 Call this with 'true' if you do not want the output profile to be set as embedded profile after apply() did a transformation.
 
void setEmbeddedProfile (const DImg &image)
 Sets the input profiles of this transform.
 
void setInputProfile (const IccProfile &profile)
 
void setIntent (int intent)
 
void setIntent (RenderingIntent intent)
 Set options.
 
void setOutputProfile (const IccProfile &profile)
 Sets the output transform.
 
void setProofIntent (int intent)
 
void setProofIntent (RenderingIntent intent)
 
void setProofProfile (const IccProfile &profile)
 Makes this transform a proofing transform, if profile is not null.
 
void setUseBlackPointCompensation (bool useBPC)
 
bool willHaveEffect ()
 Returns if this transformation will have an effect, i.e.
 

Static Public Member Functions

static void init ()
 Initialize LittleCMS library.
 

Member Function Documentation

◆ apply() [1/2]

bool Digikam::IccTransform::apply ( DImg image,
DImgLoaderObserver *const  observer = nullptr 
)

Optionally pass an observer to get progress information.

◆ apply() [2/2]

bool Digikam::IccTransform::apply ( QImage &  qimage)

This has only basic functionality.

◆ close()

void Digikam::IccTransform::close ( )

Called at destruction.

◆ setDoNotEmbedOutputProfile()

void Digikam::IccTransform::setDoNotEmbedOutputProfile ( bool  doNotEmbed)

Default is to set the output profile as embedded profile (false).

◆ setEmbeddedProfile()

void Digikam::IccTransform::setEmbeddedProfile ( const DImg image)

You can call both setEmbeddedProfile and setInputProfile. If the image contains an embedded profile this profile is used and takes precedence over the set input profile, which is used without an embedded profile. If none is set, sRGB is used.

◆ willHaveEffect()

bool Digikam::IccTransform::willHaveEffect ( )

if effective input profile and output profile are different.