AcquireCacheViewIndexes
AcquireCacheViewIndexes() returns the indexes associated with the specified view.
The format of the AcquireCacheViewIndexes method is:
const IndexPacket *AcquireCacheViewIndexes(const CacheView *cache_view)
A description of each parameter follows:
cache_view
the cache view.
AcquireCacheViewPixels
AcquireCacheViewPixels() gets pixels from the in-memory or disk pixel cache as defined by the geometry parameters. A pointer to the pixels is returned if the pixels are transferred, otherwise a NULL is returned.
The format of the AcquireCacheViewPixels method is:
const PixelPacket *AcquireCacheViewPixels(const CacheView *cache_view, const long x,const long y,const unsigned long columns, const unsigned long rows,ExceptionInfo *exception)
A description of each parameter follows:
cache_view
the cache view.
x,y,columns,rows
These values define the perimeter of a region of pixels.
exception
return any errors or warnings in this structure.
AcquireImagePixels
AcquireImagePixels() returns an immutable pixel region. If the region is successfully accessed, a pointer to it is returned, otherwise NULL is returned. The returned pointer may point to a temporary working copy of the pixels or it may point to the original pixels in memory. Performance is maximized if the selected region is part of one row, or one or more full rows, since there is opportunity to access the pixels in-place (without a copy) if the image is in RAM, or in a memory-mapped file. The returned pointer should *never* be deallocated by the user.
Pixels accessed via the returned pointer represent a simple array of type PixelPacket. If the image type is CMYK or the storage class is PseudoClass, call GetAuthenticIndexQueue() after invoking GetAuthenticPixels() to access the black color component or to obtain the colormap indexes (of type IndexPacket) corresponding to the region.
If you plan to modify the pixels, use GetAuthenticPixels() instead.
Note, the AcquireImagePixels() and GetAuthenticPixels() methods are not thread-safe. In a threaded environment, use GetCacheViewVirtualPixels() or GetCacheViewAuthenticPixels() instead.
The format of the AcquireImagePixels() method is:
const PixelPacket *AcquireImagePixels(const Image *image,const long x, const long y,const unsigned long columns,const unsigned long rows, ExceptionInfo *exception)
A description of each parameter follows:
image
the image.
x,y,columns,rows
These values define the perimeter of a region of pixels.
exception
return any errors or warnings in this structure.
AcquireIndexes
AcquireIndexes() returns the black channel or the colormap indexes associated with the last call to QueueAuthenticPixels() or GetVirtualPixels(). NULL is returned if the black channel or colormap indexes are not available.
The format of the AcquireIndexes() method is:
const IndexPacket *AcquireIndexes(const Image *image)
A description of each parameter follows:
indexes
AcquireIndexes() returns the indexes associated with the last call to QueueAuthenticPixels() or GetVirtualPixels().
image
the image.
AcquireMemory
AcquireMemory() returns a pointer to a block of memory at least size bytes suitably aligned for any use.
The format of the AcquireMemory method is:
void *AcquireMemory(const size_t size)
A description of each parameter follows:
size
the size of the memory in bytes to allocate.
AcquireOneCacheViewPixel
AcquireOneCacheViewPixel() returns a single pixel at the specified (x,y) location. The image background color is returned if an error occurs. If you plan to modify the pixel, use GetOneCacheViewAuthenticPixel() instead.
The format of the AcquireOneCacheViewPixel method is:
MagickBooleanType AcquireOneCacheViewPixel(const CacheView *cache_view, const long x,const long y,PixelPacket *pixel,ExceptionInfo *exception)
A description of each parameter follows:
cache_view
the cache view.
x,y
These values define the offset of the pixel.
pixel
return a pixel at the specified (x,y) location.
exception
return any errors or warnings in this structure.
AcquireOneCacheViewVirtualPixel
AcquireOneCacheViewVirtualPixel() returns a single pixel at the specified (x,y) location. The image background color is returned if an error occurs. If you plan to modify the pixel, use GetOneCacheViewAuthenticPixel() instead.
The format of the AcquireOneCacheViewPixel method is:
MagickBooleanType AcquireOneCacheViewVirtualPixel( const CacheView *cache_view, const VirtualPixelMethod virtual_pixel_method,const long x, const long y,PixelPacket *pixel,ExceptionInfo *exception)
A description of each parameter follows:
cache_view
the cache view.
virtual_pixel_method
the virtual pixel method.
x,y
These values define the offset of the pixel.
pixel
return a pixel at the specified (x,y) location.
exception
return any errors or warnings in this structure.
AcquireOneMagickPixel
AcquireOneMagickPixel() returns a single pixel at the specified (x,y) location. The image background color is returned if an error occurs. If you plan to modify the pixel, use GetOnePixel() instead.
The format of the AcquireOneMagickPixel() method is:
MagickPixelPacket AcquireOneMagickPixel(const Image image,const long x, const long y,ExceptionInfo exception)
A description of each parameter follows:
image
the image.
x,y
These values define the location of the pixel to return.
exception
return any errors or warnings in this structure.
AcquireOnePixel
AcquireOnePixel() returns a single pixel at the specified (x,y) location. The image background color is returned if an error occurs. If you plan to modify the pixel, use GetOnePixel() instead.
The format of the AcquireOnePixel() method is:
PixelPacket AcquireOnePixel(const Image image,const long x, const long y,ExceptionInfo exception)
A description of each parameter follows:
image
the image.
x,y
These values define the location of the pixel to return.
exception
return any errors or warnings in this structure.
AcquireOneVirtualPixel
AcquireOneVirtualPixel() returns a single pixel at the specified (x,y) location as defined by specified pixel method. The image background color is returned if an error occurs. If you plan to modify the pixel, use GetOnePixel() instead.
The format of the AcquireOneVirtualPixel() method is:
PixelPacket AcquireOneVirtualPixel(const Image image, const VirtualPixelMethod virtual_pixel_method,const long x, const long y,ExceptionInfo exception)
A description of each parameter follows:
virtual_pixel_method
the virtual pixel method.
image
the image.
x,y
These values define the location of the pixel to return.
exception
return any errors or warnings in this structure.
AcquirePixels
AcquirePixels() returns the pixels associated with the last call to QueueAuthenticPixels() or GetVirtualPixels().
The format of the AcquirePixels() method is:
const PixelPacket *AcquirePixels(const Image image)
A description of each parameter follows:
image
the image.
AffinityImage
AffinityImage() replaces the colors of an image with the closest color from a reference image.
The format of the AffinityImage method is:
MagickBooleanType AffinityImage(const QuantizeInfo *quantize_info, Image *image,const Image *affinity_image)
A description of each parameter follows:
quantize_info
Specifies a pointer to an QuantizeInfo structure.
image
the image.
affinity_image
the reference image.
AffinityImages
AffinityImages() replaces the colors of a sequence of images with the closest color from a reference image.
The format of the AffinityImage method is:
MagickBooleanType AffinityImages(const QuantizeInfo *quantize_info, Image *images,Image *affinity_image)
A description of each parameter follows:
quantize_info
Specifies a pointer to an QuantizeInfo structure.
images
the image sequence.
affinity_image
the reference image.
AllocateImage
AllocateImage() returns a pointer to an image structure initialized to default values.
The format of the AllocateImage method is:
Image *AllocateImage(const ImageInfo *image_info)
A description of each parameter follows:
image_info
Many of the image default values are set from this structure. For example, filename, compression, depth, background color, and others.
AllocateImageColormap
AllocateImageColormap() allocates an image colormap and initializes it to a linear gray colorspace. If the image already has a colormap, it is replaced. AllocateImageColormap() returns MagickTrue if successful, otherwise MagickFalse if there is not enough memory.
The format of the AllocateImageColormap method is:
MagickBooleanType AllocateImageColormap(Image *image, const unsigned long colors)
A description of each parameter follows:
image
the image.
colors
the number of colors in the image colormap.
AllocateNextImage
AllocateNextImage() initializes the next image in a sequence to default values. The next member of image points to the newly allocated image. If there is a memory shortage, next is assigned NULL.
The format of the AllocateNextImage method is:
void AllocateNextImage(const ImageInfo *image_info,Image *image)
A description of each parameter follows:
image_info
Many of the image default values are set from this structure. For example, filename, compression, depth, background color, and others.
image
the image.
AllocateString
AllocateString() allocates memory for a string and copies the source string to that memory location (and returns it).
The format of the AllocateString method is:
char *AllocateString(const char *source)
A description of each parameter follows:
source
A character string.
ChannelThresholdImage
ChannelThresholdImage() changes the value of individual pixels based on the intensity of each pixel channel. The result is a high-contrast image.
The format of the ChannelThresholdImage method is:
unsigned int ChannelThresholdImage(Image *image,const char *level)
A description of each parameter follows:
image
the image.
level
define the threshold values.
ClipPathImage
ClipPathImage() sets the image clip mask based any clipping path information if it exists.
The format of the ClipImage method is:
MagickBooleanType ClipPathImage(Image *image,const char *pathname, const MagickBooleanType inside)
A description of each parameter follows:
image
the image.
pathname
name of clipping path resource. If name is preceded by #, use clipping path numbered by name.
inside
if non-zero, later operations take effect inside clipping path. Otherwise later operations take effect outside clipping path.
CloneImageAttributes
CloneImageAttributes() clones one or more image attributes.
The format of the CloneImageAttributes method is:
MagickBooleanType CloneImageAttributes(Image *image, const Image *clone_image)
A description of each parameter follows:
image
the image.
clone_image
the clone image.
CloneMemory
CloneMemory() copies size bytes from memory area source to the destination. Copying between objects that overlap will take place correctly. It returns destination.
The format of the CloneMemory method is:
void *CloneMemory(void *destination,const void *source, const size_t size)
A description of each parameter follows:
destination
the destination.
source
the source.
size
the size of the memory in bytes to allocate.
CloseCacheView
CloseCacheView() closes the specified view returned by a previous call to OpenCacheView().
The format of the CloseCacheView method is:
CacheView *CloseCacheView(CacheView *view_info)
A description of each parameter follows:
view_info
the address of a structure of type CacheView.
ColorFloodfill
ColorFloodfill() changes the color value of any pixel that matches target and is an immediate neighbor. If the method FillToBorderMethod is specified, the color value is changed for any neighbor pixel that does not match the bordercolor member of image.
By default target must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. The fuzz member of image defines how much tolerance is acceptable to consider two colors as the same. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color for the purposes of the floodfill.
The format of the ColorFloodfillImage method is:
MagickBooleanType ColorFloodfillImage(Image *image, const DrawInfo *draw_info,const PixelPacket target, const long x_offset,const long y_offset,const PaintMethod method)
A description of each parameter follows:
image
the image.
draw_info
the draw info.
target
the RGB value of the target color.
x,y
the starting location of the operation.
method
Choose either FloodfillMethod or FillToBorderMethod.
DeleteImageAttribute
DeleteImageAttribute() deletes an attribute from the image.
The format of the DeleteImageAttribute method is:
MagickBooleanType DeleteImageAttribute(Image *image,const char *key)
A description of each parameter follows:
image
the image info.
key
the image key.
DeleteImageList
DeleteImageList() deletes an image at the specified position in the list.
The format of the DeleteImageList method is:
unsigned int DeleteImageList(Image *images,const long offset)
A description of each parameter follows:
images
the image list.
offset
the position within the list.
DeleteMagickRegistry
DeleteMagickRegistry() deletes an entry in the registry as defined by the id. It returns MagickTrue if the entry is deleted otherwise MagickFalse if no entry is found in the registry that matches the id.
The format of the DeleteMagickRegistry method is:
MagickBooleanType DeleteMagickRegistry(const long id)
A description of each parameter follows:
id
the registry id.
DescribeImage
DescribeImage() describes an image by printing its attributes to the file. Attributes include the image width, height, size, and others.
The format of the DescribeImage method is:
MagickBooleanType DescribeImage(Image *image,FILE *file, const MagickBooleanType verbose)
A description of each parameter follows:
image
the image.
file
the file, typically stdout.
verbose
A value other than zero prints more detailed information about the image.
DestroyImageAttributes
DestroyImageAttributes() deallocates memory associated with the image attribute list.
The format of the DestroyImageAttributes method is:
DestroyImageAttributes(Image *image)
A description of each parameter follows:
image
the image.
DestroyImages
DestroyImages() destroys an image list.
The format of the DestroyImages method is:
void DestroyImages(Image *image)
A description of each parameter follows:
image
the image sequence.
DestroyMagick
DestroyMagick() destroys the ImageMagick environment.
The format of the DestroyMagick function is:
DestroyMagick(void)
DispatchImage
DispatchImage() extracts pixel data from an image and returns it to you. The method returns MagickFalse on success otherwise MagickTrue if an error is encountered. The data is returned as char, short int, int, long, float, or double in the order specified by map.
Suppose you want to extract the first scanline of a 640x480 image as character data in red-green-blue order:
DispatchImage(image,0,0,640,1,"RGB",CharPixel,pixels,exception);
The format of the DispatchImage method is:
unsigned int DispatchImage(const Image *image,const long x_offset, const long y_offset,const unsigned long columns, const unsigned long rows,const char *map,const StorageType type, void *pixels,ExceptionInfo *exception)
A description of each parameter follows:
image
the image.
x_offset, y_offset, columns, rows
These values define the perimeter of a region of pixels you want to extract.
map
This string reflects the expected ordering of the pixel array. It can be any combination or order of R = red, G = green, B = blue, A = alpha, C = cyan, Y = yellow, M = magenta, K = black, or I = intensity (for grayscale).
type
Define the data type of the pixels. Float and double types are normalized to [0..1] otherwise [0..QuantumRange]. Choose from these types: CharPixel, ShortPixel, IntegerPixel, LongPixel, FloatPixel, or DoublePixel.
pixels
This array of values contain the pixel components as defined by map and type. You must preallocate this array where the expected length varies depending on the values of width, height, map, and type.
exception
return any errors or warnings in this structure.
ExtractSubimageFromImageImage
ExtractSubimageFromImageImage() extracts a region of the image that most closely resembles the reference.
The format of the ExtractSubimageFromImageImage method is:
Image *ExtractSubimageFromImage(const Image *image,const Image *reference, ExceptionInfo *exception)
A description of each parameter follows:
image
the image.
reference
find an area of the image that closely resembles this image.
exception
return any errors or warnings in this structure.
FlattenImages
FlattenImages() Obsolete Function: Use MergeImageLayers() instead.
The format of the FlattenImage method is:
Image *FlattenImage(Image *image,ExceptionInfo *exception)
A description of each parameter follows:
image
the image sequence.
exception
return any errors or warnings in this structure.
FormatImageAttribute
FormatImageAttribute() permits formatted key/value pairs to be saved as an image attribute.
The format of the FormatImageAttribute method is:
MagickBooleanType FormatImageAttribute(Image *image,const char *key, const char *format,...)
A description of each parameter follows.
image
The image.
key
The attribute key.
format
A string describing the format to use to write the remaining arguments.
FormatString
FormatString() prints formatted output of a variable argument list.
The format of the FormatString method is:
void FormatString(char *string,const char *format,...)
A description of each parameter follows.
string
Method FormatString returns the formatted string in this character buffer.
format
A string describing the format to use to write the remaining arguments.
GetConfigureBlob
GetConfigureBlob() returns the specified configure file as a blob.
The format of the GetConfigureBlob method is:
void *GetConfigureBlob(const char *filename,ExceptionInfo *exception)
A description of each parameter follows:
filename
the configure file name.
path
return the full path information of the configure file.
length
This pointer to a size_t integer sets the initial length of the blob. On return, it reflects the actual length of the blob.
exception
return any errors or warnings in this structure.
GetCacheView
GetCacheView() gets pixels from the in-memory or disk pixel cache as defined by the geometry parameters. A pointer to the pixels is returned if the pixels are transferred, otherwise a NULL is returned.
The format of the GetCacheView method is:
PixelPacket *GetCacheView(CacheView *cache_view,const long x, const long y,const unsigned long columns,const unsigned long rows)
A description of each parameter follows:
cache_view
the address of a structure of type CacheView.
x,y,columns,rows
These values define the perimeter of a region of pixels.
GetCacheViewIndexes
GetCacheViewIndexes() returns the indexes associated with the specified view.
The format of the GetCacheViewIndexes method is:
IndexPacket *GetCacheViewIndexes(CacheView *cache_view)
A description of each parameter follows:
cache_view
the cache view.
GetCacheViewPixels
GetCacheViewPixels() gets pixels from the in-memory or disk pixel cache as defined by the geometry parameters. A pointer to the pixels is returned if the pixels are transferred, otherwise a NULL is returned.
The format of the GetCacheViewPixels method is:
PixelPacket *GetCacheViewPixels(CacheView *cache_view,const long x, const long y,const unsigned long columns,const unsigned long rows)
A description of each parameter follows:
cache_view
the cache view.
x,y,columns,rows
These values define the perimeter of a region of pixels.
GetImageAttribute
GetImageAttribute() searches the list of image attributes and returns a pointer to the attribute if it exists otherwise NULL.
The format of the GetImageAttribute method is:
const ImageAttribute *GetImageAttribute(const Image *image, const char *key)
A description of each parameter follows:
image
the image.
key
These character strings are the name of an image attribute to return.
GetImageClippingPathAttribute
GetImageClippingPathAttribute() searches the list of image attributes and returns a pointer to a clipping path if it exists otherwise NULL.
The format of the GetImageClippingPathAttribute method is:
const ImageAttribute *GetImageClippingPathAttribute(Image *image)
A description of each parameter follows:
attribute
Method GetImageClippingPathAttribute returns the clipping path if it exists otherwise NULL.
image
the image.
GetImageFromMagickRegistry
GetImageFromMagickRegistry() gets an image from the registry as defined by its name. If the image is not found, a NULL image is returned.
The format of the GetImageFromMagickRegistry method is:
Image *GetImageFromMagickRegistry(const char *name,long *id, ExceptionInfo *exception)
A description of each parameter follows:
name
the name of the image to retrieve from the registry.
id
the registry id.
exception
return any errors or warnings in this structure.
GetMagickRegistry
GetMagickRegistry() gets a blob from the registry as defined by the id. If the blob that matches the id is not found, NULL is returned.
The format of the GetMagickRegistry method is:
const void *GetMagickRegistry(const long id,RegistryType *type, size_t *length,ExceptionInfo *exception)
A description of each parameter follows:
id
the registry id.
type
the registry type.
length
the blob length in number of bytes.
exception
return any errors or warnings in this structure.
GetImageGeometry
GetImageGeometry() returns a region as defined by the geometry string with respect to the image and its gravity.
The format of the GetImageGeometry method is:
int GetImageGeometry(Image *image,const char *geometry, const unsigned int size_to_fit,RectangeInfo *region_info)
A description of each parameter follows:
flags
Method GetImageGeometry returns a bitmask that indicates which of the four values were located in the geometry string.
geometry
The geometry (e.g. 100x100+10+10).
size_to_fit
A value other than 0 means to scale the region so it fits within the specified width and height.
region_info
the region as defined by the geometry string with respect to the image and its gravity.
GetImageList
GetImageList() returns an image at the specified position in the list.
The format of the GetImageList method is:
Image *GetImageList(const Image *images,const long offset, ExceptionInfo *exception)
A description of each parameter follows:
images
the image list.
offset
the position within the list.
exception
return any errors or warnings in this structure.
GetImageListIndex
GetImageListIndex() returns the position in the list of the specified image.
The format of the GetImageListIndex method is:
long GetImageListIndex(const Image *images)
A description of each parameter follows:
images
the image list.
GetImageListSize
GetImageListSize() returns the number of images in the list.
The format of the GetImageListSize method is:
unsigned long GetImageListSize(const Image *images)
A description of each parameter follows:
images
the image list.
GetImagePixels
GetImagePixels() obtains a pixel region for read/write access. If the region is successfully accessed, a pointer to a PixelPacket array representing the region is returned, otherwise NULL is returned.
The returned pointer may point to a temporary working copy of the pixels or it may point to the original pixels in memory. Performance is maximized if the selected region is part of one row, or one or more full rows, since then there is opportunity to access the pixels in-place (without a copy) if the image is in RAM, or in a memory-mapped file. The returned pointer should *never* be deallocated by the user.
Pixels accessed via the returned pointer represent a simple array of type PixelPacket. If the image type is CMYK or if the storage class is PseduoClass, call GetAuthenticIndexQueue() after invoking GetImagePixels() to obtain the black color component or colormap indexes (of type IndexPacket) corresponding to the region. Once the PixelPacket (and/or IndexPacket) array has been updated, the changes must be saved back to the underlying image using SyncAuthenticPixels() or they may be lost.
The format of the GetImagePixels() method is:
PixelPacket *GetImagePixels(Image *image,const long x,const long y, const unsigned long columns,const unsigned long rows)
A description of each parameter follows:
image
the image.
x,y,columns,rows
These values define the perimeter of a region of pixels.
GetIndexes
GetIndexes() returns the black channel or the colormap indexes associated with the last call to QueueAuthenticPixels() or GetVirtualPixels(). NULL is returned if the black channel or colormap indexes are not available.
The format of the GetIndexes() method is:
IndexPacket *GetIndexes(const Image *image)
A description of each parameter follows:
indexes
GetIndexes() returns the indexes associated with the last call to QueueAuthenticPixels() or GetAuthenticPixels().
image
the image.
GetNextImage
GetNextImage() returns the next image in a list.
The format of the GetNextImage method is:
Image *GetNextImage(const Image *images)
A description of each parameter follows:
images
the image list.
GetNextImageAttribute
GetNextImageAttribute() gets the next image attribute.
The format of the GetNextImageAttribute method is:
const ImageAttribute *GetNextImageAttribute(const Image *image)
A description of each parameter follows:
image
the image.
GetNumberScenes
GetNumberScenes() returns the number of images in the list.
The format of the GetNumberScenes method is:
unsigned int GetNumberScenes(const Image *images)
A description of each parameter follows:
images
the image list.
GetOnePixel
GetOnePixel() returns a single pixel at the specified (x,y) location. The image background color is returned if an error occurs.
The format of the GetOnePixel() method is:
PixelPacket GetOnePixel(const Image image,const long x,const long y)
A description of each parameter follows:
image
the image.
x,y
These values define the location of the pixel to return.
GetPixels
GetPixels() returns the pixels associated with the last call to QueueAuthenticPixels() or GetAuthenticPixels().
The format of the GetPixels() method is:
PixelPacket *GetPixels(const Image image)
A description of each parameter follows:
pixels
GetPixels() returns the pixels associated with the last call to QueueAuthenticPixels() or GetAuthenticPixels().
image
the image.
GetPreviousImage
GetPreviousImage() returns the previous image in a list.
The format of the GetPreviousImage method is:
Image *GetPreviousImage(const Image *images)
A description of each parameter follows:
images
the image list.
HSLTransform
HSLTransform() converts a (hue, saturation, lightness) to a (red, green, blue) triple.
The format of the HSLTransformImage method is:
void HSLTransform(const double hue,const double saturation, const double lightness,Quantum *red,Quantum *green,Quantum *blue)
A description of each parameter follows:
hue, saturation, lightness
A double value representing a component of the HSL color space.
red, green, blue
A pointer to a pixel component of type Quantum.
IdentityAffine
IdentityAffine() initializes the affine transform to the identity matrix.
The format of the IdentityAffine method is:
IdentityAffine(AffineMatrix *affine)
A description of each parameter follows:
affine
A pointer the affine transform of type AffineMatrix.
InitializeMagick
InitializeMagick() initializes the ImageMagick environment.
The format of the InitializeMagick function is:
InitializeMagick(const char *path)
A description of each parameter follows:
path
the execution path of the current ImageMagick client.
InterpolatePixelColor
InterpolatePixelColor() applies bi-linear or tri-linear interpolation between a pixel and it's neighbors.
The format of the InterpolatePixelColor method is:
MagickPixelPacket InterpolatePixelColor(const Image *image, CacheView *view_info,InterpolatePixelMethod method,const double x, const double y,ExceptionInfo *exception)
A description of each parameter follows:
image
the image.
image_view
the image cache view.
type
the type of pixel color interpolation.
x,y
A double representing the current (x,y) position of the pixel.
exception
return any errors or warnings in this structure.
InterpretImageAttributes
InterpretImageAttributes() replaces any embedded formatting characters with the appropriate image attribute and returns the translated text.
The format of the InterpretImageAttributes method is:
char *InterpretImageAttributes(const ImageInfo *image_info,Image *image, const char *embed_text)
A description of each parameter follows:
image_info
the image info.
image
the image.
embed_text
the address of a character string containing the embedded formatting characters.
LevelImageColor
LevelImageColor() will map the given color to "black" and "white" values, limearly spreading out the colors, and level values on a channel by channel bases, as per LevelImage(). The given colors allows you to specify different level ranges for each of the color channels seperatally.
If the boolean 'invert' is set true the image values will modifyed in the reverse direction. That is any existing "black" and "white" colors in the image will become the color values given, with all other values compressed appropriatally. This effectivally maps a greyscale gradient into the given color gradient.
The format of the LevelImageColors method is:
MagickBooleanType LevelImageColors(Image *image,const ChannelType channel, const MagickPixelPacket *black_color,const MagickPixelPacket *white_color, const MagickBooleanType invert)
A description of each parameter follows:
image
the image.
channel
the channel.
black_color
The color to map black to/from
white_point
The color to map white to/from
invert
if true map the colors (levelize), rather than from (level)
LiberateMemory
LiberateMemory() frees memory that has already been allocated, and NULL's the pointer to it.
The format of the LiberateMemory method is:
void LiberateMemory(void **memory)
A description of each parameter follows:
memory
A pointer to a block of memory to free for reuse.
LiberateSemaphoreInfo
LiberateSemaphoreInfo() relinquishes a semaphore.
The format of the LiberateSemaphoreInfo method is:
LiberateSemaphoreInfo(void **semaphore_info)
A description of each parameter follows:
semaphore_info
Specifies a pointer to an SemaphoreInfo structure.
MagickIncarnate
MagickIncarnate() initializes the ImageMagick environment.
The format of the MagickIncarnate function is:
MagickIncarnate(const char *path)
A description of each parameter follows:
path
the execution path of the current ImageMagick client.
MagickMonitor
MagickMonitor() calls the monitor handler method with a text string that describes the task and a measure of completion. The method returns MagickTrue on success otherwise MagickFalse if an error is encountered, e.g. if there was a user interrupt.
The format of the MagickMonitor method is:
MagickBooleanType MagickMonitor(const char *text, const MagickOffsetType offset,const MagickSizeType span, void *client_data)
A description of each parameter follows:
offset
the position relative to the span parameter which represents how much progress has been made toward completing a task.
span
the span relative to completing a task.
client_data
the client data.
MapImage
MapImage() replaces the colors of an image with the closest color from a reference image.
The format of the MapImage method is:
MagickBooleanType MapImage(Image *image,const Image *map_image, const MagickBooleanType dither)
A description of each parameter follows:
image
Specifies a pointer to an Image structure.
map_image
the image. Reduce image to a set of colors represented by this image.
dither
Set this integer value to something other than zero to dither the mapped image.
MapImages
MapImages() replaces the colors of a sequence of images with the closest color from a reference image.
The format of the MapImage method is:
MagickBooleanType MapImages(Image *images,Image *map_image, const MagickBooleanType dither)
A description of each parameter follows:
image
Specifies a pointer to a set of Image structures.
map_image
the image. Reduce image to a set of colors represented by this image.
dither
Set this integer value to something other than zero to dither the quantized image.
MatteFloodfill
MatteFloodfill() changes the transparency value of any pixel that matches target and is an immediate neighbor. If the method FillToBorderMethod is specified, the transparency value is changed for any neighbor pixel that does not match the bordercolor member of image.
By default target must match a particular pixel transparency exactly. However, in many cases two transparency values may differ by a small amount. The fuzz member of image defines how much tolerance is acceptable to consider two transparency values as the same. For example, set fuzz to 10 and the opacity values of 100 and 102 respectively are now interpreted as the same value for the purposes of the floodfill.
The format of the MatteFloodfillImage method is:
MagickBooleanType MatteFloodfillImage(Image *image, const PixelPacket target,const Quantum opacity,const long x_offset, const long y_offset,const PaintMethod method)
A description of each parameter follows:
image
the image.
target
the RGB value of the target color.
opacity
the level of transparency: 0 is fully opaque and QuantumRange is fully transparent.
x,y
the starting location of the operation.
method
Choose either FloodfillMethod or FillToBorderMethod.
MosaicImages
MosaicImages() Obsolete Function: Use MergeImageLayers() instead.
The format of the MosaicImage method is:
Image *MosaicImages(const Image *image,ExceptionInfo *exception)
A description of each parameter follows:
image
the image list to be composited together
exception
return any errors or warnings in this structure.
OpaqueImage
OpaqueImage() changes any pixel that matches color with the color defined by fill.
By default color must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. Fuzz defines how much tolerance is acceptable to consider two colors as the same. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color.
The format of the OpaqueImage method is:
MagickBooleanType OpaqueImage(Image *image, const PixelPacket *target,const PixelPacket fill)
A description of each parameter follows:
image
the image.
target
the RGB value of the target color.
fill
the replacement color.
OpenCacheView
OpenCacheView() opens a view into the pixel cache, using the VirtualPixelMethod that is defined within the given image itself.
The format of the OpenCacheView method is:
CacheView *OpenCacheView(const Image *image)
A description of each parameter follows:
image
the image.
PaintFloodfill
PaintFloodfill() changes the color value of any pixel that matches target and is an immediate neighbor. If the method FillToBorderMethod is specified, the color value is changed for any neighbor pixel that does not match the bordercolor member of image.
By default target must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. The fuzz member of image defines how much tolerance is acceptable to consider two colors as the same. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color for the purposes of the floodfill.
The format of the PaintFloodfillImage method is:
MagickBooleanType PaintFloodfillImage(Image *image, const ChannelType channel,const MagickPixelPacket target,const long x, const long y,const DrawInfo *draw_info,const PaintMethod method)
A description of each parameter follows:
image
the image.
channel
the channel(s).
target
the RGB value of the target color.
x,y
the starting location of the operation.
draw_info
the draw info.
method
Choose either FloodfillMethod or FillToBorderMethod.
PaintOpaqueImage
PaintOpaqueImage() changes any pixel that matches color with the color defined by fill.
By default color must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. Fuzz defines how much tolerance is acceptable to consider two colors as the same. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color.
The format of the PaintOpaqueImage method is:
MagickBooleanType PaintOpaqueImage(Image *image, const PixelPacket *target,const PixelPacket *fill) MagickBooleanType PaintOpaqueImageChannel(Image *image, const ChannelType channel,const PixelPacket *target, const PixelPacket *fill)
A description of each parameter follows:
image
the image.
channel
the channel(s).
target
the RGB value of the target color.
fill
the replacement color.
PaintTransparentImage
PaintTransparentImage() changes the opacity value associated with any pixel that matches color to the value defined by opacity.
By default color must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. Fuzz defines how much tolerance is acceptable to consider two colors as the same. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color.
The format of the PaintTransparentImage method is:
MagickBooleanType PaintTransparentImage(Image *image, const MagickPixelPacket *target,const Quantum opacity)
A description of each parameter follows:
image
the image.
target
the RGB value of the target color.
opacity
the replacement opacity value.
ParseSizeGeometry
ParseSizeGeometry() returns a region as defined by the geometry string with respect to the image dimensions and aspect ratio.
The format of the ParseSizeGeometry method is:
MagickStatusType ParseSizeGeometry(const Image *image, const char *geometry,RectangeInfo *region_info)
A description of each parameter follows:
geometry
The geometry (e.g. 100x100+10+10).
region_info
the region as defined by the geometry string.
PopImageList
PopImageList() removes the last image in the list.
The format of the PopImageList method is:
Image *PopImageList(Image **images)
A description of each parameter follows:
images
the image list.
PopImagePixels
PopImagePixels() transfers one or more pixel components from the image pixel cache to a user supplied buffer. The pixels are returned in network byte order. MagickTrue is returned if the pixels are successfully transferred, otherwise MagickFalse.
The format of the PopImagePixels method is:
size_t PopImagePixels(Image *,const QuantumType quantum, unsigned char *destination)
A description of each parameter follows:
image
the image.
quantum
Declare which pixel components to transfer (RGB, RGBA, etc).
destination
The components are transferred to this buffer.
PostscriptGeometry
PostscriptGeometry() replaces any page mneumonic with the equivalent size in picas.
The format of the PostscriptGeometry method is:
char *PostscriptGeometry(const char *page)
A description of each parameter follows.
page
Specifies a pointer to an array of characters. The string is either a Postscript page name (e.g. A4) or a postscript page geometry (e.g. 612x792+36+36).
PushImageList
PushImageList() adds an image to the end of the list.
The format of the PushImageList method is:
unsigned int PushImageList(Image *images,const Image *image, ExceptionInfo *exception)
A description of each parameter follows:
images
the image list.
image
the image.
exception
return any errors or warnings in this structure.
PushImagePixels
PushImagePixels() transfers one or more pixel components from a user supplied buffer into the image pixel cache of an image. The pixels are expected in network byte order. It returns MagickTrue if the pixels are successfully transferred, otherwise MagickFalse.
The format of the PushImagePixels method is:
size_t PushImagePixels(Image *image,const QuantumType quantum, const unsigned char *source)
A description of each parameter follows:
image
the image.
quantum
Declare which pixel components to transfer (red, green, blue, opacity, RGB, or RGBA).
source
The pixel components are transferred from this buffer.
QuantizationError
QuantizationError() measures the difference between the original and quantized images. This difference is the total quantization error. The error is computed by summing over all pixels in an image the distance squared in RGB space between each reference pixel value and its quantized value. These values are computed:
o mean_error_per_pixel: This value is the mean error for any single pixel in the image.
normalized_mean_square_error
This value is the normalized mean quantization error for any single pixel in the image. This distance measure is normalized to a range between 0 and 1. It is independent of the range of red, green, and blue values in the image.
normalized_maximum_square_error
Thsi value is the normalized maximum quantization error for any single pixel in the image. This distance measure is normalized to a range between 0 and 1. It is independent of the range of red, green, and blue values in your image.
The format of the QuantizationError method is:
unsigned int QuantizationError(Image *image)
A description of each parameter follows.
image
Specifies a pointer to an Image structure; returned from ReadImage.
RandomChannelThresholdImage
RandomChannelThresholdImage() changes the value of individual pixels based on the intensity of each pixel compared to a random threshold. The result is a low-contrast, two color image.
The format of the RandomChannelThresholdImage method is:
unsigned int RandomChannelThresholdImage(Image *image, const char *channel, const char *thresholds, ExceptionInfo *exception)
A description of each parameter follows:
image
the image.
channel
the channel or channels to be thresholded.
thresholds
a geometry string containing LOWxHIGH thresholds. If the string contains 2x2, 3x3, or 4x4, then an ordered dither of order 2, 3, or 4 will be performed instead.
exception
return any errors or warnings in this structure.
ReacquireMemory
ReacquireMemory() changes the size of the memory and returns a pointer to the (possibly moved) block. The contents will be unchanged up to the lesser of the new and old sizes.
The format of the ReacquireMemory method is:
void ReacquireMemory(void **memory,const size_t size)
A description of each parameter follows:
memory
A pointer to a memory allocation. On return the pointer may change but the contents of the original allocation will not.
size
the new size of the allocated memory.
ResetImageAttributeIterator
ResetImageAttributeIterator() resets the image attributes iterator. Use it in conjunction with GetNextImageAttribute() to iterate over all the values associated with an image.
The format of the ResetImageAttributeIterator method is:
ResetImageAttributeIterator(const ImageInfo *image)
A description of each parameter follows:
image
the image.
SetCacheViewPixels
SetCacheViewPixels() gets pixels from the in-memory or disk pixel cache as defined by the geometry parameters. A pointer to the pixels is returned if the pixels are transferred, otherwise a NULL is returned.
The format of the SetCacheViewPixels method is:
PixelPacket *SetCacheViewPixels(CacheView *cache_view,const long x, const long y,const unsigned long columns,const unsigned long rows)
A description of each parameter follows:
cache_view
the cache view.
x,y,columns,rows
These values define the perimeter of a region of pixels.
SetExceptionInfo
SetExceptionInfo() sets the exception severity.
The format of the SetExceptionInfo method is:
MagickBooleanType SetExceptionInfo(ExceptionInfo *exception, ExceptionType severity)
A description of each parameter follows:
exception
the exception info.
severity
the exception severity.
SetImage
SetImage() sets the red, green, and blue components of each pixel to the image background color and the opacity component to the specified level of transparency. The background color is defined by the background_color member of the image.
The format of the SetImage method is:
void SetImage(Image *image,const Quantum opacity)
A description of each parameter follows:
image
the image.
opacity
Set each pixel to this level of transparency.
SetImageAttribute
SetImageAttribute() searches the list of image attributes and replaces the attribute value. If it is not found in the list, the attribute name and value is added to the list.
The format of the SetImageAttribute method is:
MagickBooleanType SetImageAttribute(Image *image,const char *key, const char *value)
A description of each parameter follows:
image
the image.
key
the key.
value
the value.
SetImageList
SetImageList() inserts an image into the list at the specified position.
The format of the SetImageList method is:
unsigned int SetImageList(Image *images,const Image *image, const long offset,ExceptionInfo *exception)
A description of each parameter follows:
images
the image list.
image
the image.
offset
the position within the list.
exception
return any errors or warnings in this structure.
SetImagePixels
SetImagePixels() queues a mutable pixel region. If the region is successfully intialized a pointer to a PixelPacket array representing the region is returned, otherwise NULL is returned. The returned pointer may point to a temporary working buffer for the pixels or it may point to the final location of the pixels in memory.
Write-only access means that any existing pixel values corresponding to the region are ignored. This useful while the initial image is being created from scratch, or if the existing pixel values are to be completely replaced without need to refer to their pre-existing values. The application is free to read and write the pixel buffer returned by SetImagePixels() any way it pleases. SetImagePixels() does not initialize the pixel array values. Initializing pixel array values is the application's responsibility.
Performance is maximized if the selected region is part of one row, or one or more full rows, since then there is opportunity to access the pixels in-place (without a copy) if the image is in RAM, or in a memory-mapped file. The returned pointer should *never* be deallocated by the user.
Pixels accessed via the returned pointer represent a simple array of type PixelPacket. If the image type is CMYK or the storage class is PseudoClass, call GetAuthenticIndexQueue() after invoking GetAuthenticPixels() to obtain the black color component or the colormap indexes (of type IndexPacket) corresponding to the region. Once the PixelPacket (and/or IndexPacket) array has been updated, the changes must be saved back to the underlying image using SyncAuthenticPixels() or they may be lost.
The format of the SetImagePixels() method is:
PixelPacket *SetImagePixels(Image *image,const long x,const long y, const unsigned long columns,const unsigned long rows)
A description of each parameter follows:
pixels
SetImagePixels returns a pointer to the pixels if they are transferred, otherwise a NULL is returned.
image
the image.
x,y,columns,rows
These values define the perimeter of a region of pixels.
SetMagickRegistry
SetMagickRegistry() sets a blob into the registry and returns a unique ID. If an error occurs, -1 is returned.
The format of the SetMagickRegistry method is:
long SetMagickRegistry(const RegistryType type,const void *blob, const size_t length,ExceptionInfo *exception)
A description of each parameter follows:
type
the registry type.
blob
the address of a Binary Large OBject.
length
For a registry type of ImageRegistryType use sizeof(Image) otherise the blob length in number of bytes.
exception
return any errors or warnings in this structure.
SetMonitorHandler
SetMonitorHandler() sets the monitor handler to the specified method and returns the previous monitor handler.
The format of the SetMonitorHandler method is:
MonitorHandler SetMonitorHandler(MonitorHandler handler)
A description of each parameter follows:
handler
Specifies a pointer to a method to handle monitors.
ShiftImageList
ShiftImageList() removes an image from the beginning of the list.
The format of the ShiftImageList method is:
Image *ShiftImageList(Image **images)
A description of each parameter follows:
images
the image list.
SpliceImageList
SpliceImageList() removes the images designated by offset and length from the list and replaces them with the specified list.
The format of the SpliceImageList method is:
Image *SpliceImageList(Image *images,const long offset, const unsigned long length,const Image *splices, ExceptionInfo *exception)
A description of each parameter follows:
images
the image list.
offset
the position within the list.
length
the length of the image list to remove.
splice
Replace the removed image list with this list.
exception
return any errors or warnings in this structure.
Strip
Strip() strips any whitespace or quotes from the beginning and end of a string of characters.
The format of the Strip method is:
void Strip(char *message)
A description of each parameter follows:
message
Specifies an array of characters.
SyncCacheView
SyncCacheView() saves the cache view pixels to the in-memory or disk cache. It returns MagickTrue if the pixel region is synced, otherwise MagickFalse.
The format of the SyncCacheView method is:
MagickBooleanType SyncCacheView(CacheView *cache_view)
A description of each parameter follows:
cache_view
the cache view.
SyncCacheViewPixels
SyncCacheViewPixels() saves the cache view pixels to the in-memory or disk cache. It returns MagickTrue if the pixel region is flushed, otherwise MagickFalse.
The format of the SyncCacheViewPixels method is:
MagickBooleanType SyncCacheViewPixels(CacheView *cache_view)
A description of each parameter follows:
cache_view
the cache view.
exception
return any errors or warnings in this structure.
SyncImagePixels
SyncImagePixels() saves the image pixels to the in-memory or disk cache. The method returns MagickTrue if the pixel region is synced, otherwise MagickFalse.
The format of the SyncImagePixels() method is:
MagickBooleanType SyncImagePixels(Image *image)
A description of each parameter follows:
image
the image.
TemporaryFilename
TemporaryFilename() replaces the contents of path by a unique path name.
The format of the TemporaryFilename method is:
void TemporaryFilename(char *path)
A description of each parameter follows.
path
Specifies a pointer to an array of characters. The unique path name is returned in this array.
ThresholdImage
ThresholdImage() changes the value of individual pixels based on the intensity of each pixel compared to threshold. The result is a high-contrast, two color image.
The format of the ThresholdImage method is:
unsigned int ThresholdImage(Image *image,const double threshold)
A description of each parameter follows:
image
the image.
threshold
Define the threshold value
ThresholdImageChannel
ThresholdImageChannel() changes the value of individual pixels based on the intensity of each pixel channel. The result is a high-contrast image.
The format of the ThresholdImageChannel method is:
unsigned int ThresholdImageChannel(Image *image,const char *threshold)
A description of each parameter follows:
image
the image.
threshold
define the threshold values.
TransformHSL
TransformHSL() converts a (red, green, blue) to a (hue, saturation, lightness) triple.
The format of the TransformHSL method is:
void TransformHSL(const Quantum red,const Quantum green, const Quantum blue,double *hue,double *saturation,double *lightness)
A description of each parameter follows:
red, green, blue
A Quantum value representing the red, green, and blue component of a pixel..
hue, saturation, lightness
A pointer to a double value representing a component of the HSL color space.
TranslateText
TranslateText() replaces any embedded formatting characters with the appropriate image attribute and returns the translated text.
The format of the TranslateText method is:
char *TranslateText(const ImageInfo *image_info,Image *image, const char *embed_text)
A description of each parameter follows:
image_info
the image info.
image
the image.
embed_text
the address of a character string containing the embedded formatting characters.
TransparentImage
TransparentImage() changes the opacity value associated with any pixel that matches color to the value defined by opacity.
By default color must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. Fuzz defines how much tolerance is acceptable to consider two colors as the same. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color.
The format of the TransparentImage method is:
MagickBooleanType TransparentImage(Image *image, const PixelPacket target,const Quantum opacity)
A description of each parameter follows:
image
the image.
target
the RGB value of the target color.
opacity
the replacement opacity value.
UnshiftImageList
UnshiftImageList() adds the image to the beginning of the list.
The format of the UnshiftImageList method is:
unsigned int UnshiftImageList(Image *images,const Image *image, ExceptionInfo *exception)
A description of each parameter follows:
images
the image list.
image
the image.
exception
return any errors or warnings in this structure.