NAME SYNOPSIS FUNCTION DESCRIPTIONS CloneImageProfiles DestroyImageProfiles GetImageProfile GetNextImageProfile ProfileImage RemoveImageProfile ResetProfileIterator SetImageProfile # NAME profile - Dealing with Image Profiles # SYNOPSIS unsigned int CloneImageProfiles( Image *image, const Image *clone_image ); void DestroyImageProfiles( Image *image ); StringInfo * GetImageProfile( const Image *image, const char *name ); char * GetNextImageProfile( const Image *image ); unsigned int ProfileImage( Image *image, const char *name, const unsigned char *datum, const unsigned long length, unsigned int clone ); StringInfo RemoveImageProfile( Image *image, const char *name ); unsigned int SetImageProfile( Image *image, const char *name, const StringInfo *profile ); # FUNCTION DESCRIPTIONS ## CloneImageProfiles CloneImageProfiles() clones one or more image profiles. The format of the CloneImageProfiles method is: unsigned int CloneImageProfiles ( Image *image, const Image *clone_image ); A description of each parameter follows: image: The image. clone_image: The clone image. ## DestroyImageProfiles DestroyImageProfiles() releases memory associated with an image profile map. The format of the DestroyProfiles method is: void DestroyImageProfiles ( Image *image ); A description of each parameter follows: image: The image. ## GetImageProfile GetImageProfile() gets a profile associated with an image by name. The format of the GetImageProfile method is: StringInfo *GetImageProfile ( const Image *image, const char *name ); A description of each parameter follows: image: The image. name: The profile name. ## GetNextImageProfile GetNextImageProfile() gets the next profile name for an image. The format of the GetNextImageProfile method is: char *GetNextImageProfile ( const Image *image ); A description of each parameter follows: hash_info: The hash info. ## ProfileImage ProfileImage() adds or removes a ICC, IPTC, or generic profile from an image. If the profile is NULL, it is removed from the image otherwise added. Use a name of ' *' and a profile of NULL to remove all profiles from the image. The format of the ProfileImage method is: unsigned int ProfileImage ( Image *image, const char *name, const unsigned char *datum, const unsigned long length, unsigned int clone ); A description of each parameter follows: image: The image. name: Name of profile to add or remove: ICC, IPTC, or generic profile. datum: The profile data. length: The length of the profile. clone: should be False. ## RemoveImageProfile RemoveImageProfile() removes an entry from the image-map by its name. The format of the RemoveImageProfile method is: StringInfo RemoveImageProfile ( Image *image, const char *name ); A description of each parameter follows: image: The image. name: The profile name. ## ResetProfileIterator `ResetImageProfileIterator()` resets the image profile iterator. Use it in conjunction with `GetNextImageProfile()` to iterate over all the profiles associated with an image. The format of the ResetImageProfileIterator method is:
        ResetImageProfileIterator(Image *image)
A description of each parameter follows: image: The image. ## SetImageProfile SetImageProfile() adds a named profile to the image. If a profile with the same name already exists, it is replaced. This method differs from the ProfileImage ( ) method in that it does not apply CMS color profiles. The format of the SetImageProfile method is: unsigned int SetImageProfile ( Image *image, const char *name, const StringInfo *profile ); A description of each parameter follows: image: The image. name: The profile name. datum: The datum. "Image manipulation software that works like magick"