/*
- Copyright 1999-2011 ImageMagick Studio LLC, a non-profit organization
+ Copyright 1999-2012 ImageMagick Studio LLC, a non-profit organization
dedicated to making software imaging solutions freely available.
You may not use this file except in compliance with the License.
#include <MagickCore/color.h>
-#define OpaqueAlpha ((Quantum) QuantumRange)
+#define OpaqueAlpha (QuantumRange)
#define TransparentAlpha ((Quantum) 0UL)
typedef enum
DeactivateAlphaChannel,
ExtractAlphaChannel,
OpaqueAlphaChannel,
+ RemoveAlphaChannel,
SetAlphaChannel,
ShapeAlphaChannel,
TransparentAlphaChannel
storage_class;
ColorspaceType
- colorspace; /* colorspace of image data */
+ colorspace; /* colorspace of image data */
CompressionType
- compression; /* compression of image when read/write */
+ compression; /* compression of image when read/write */
size_t
- quality; /* compression quality setting, meaning varies */
+ quality; /* compression quality setting, meaning varies */
OrientationType
- orientation; /* photo orientation of image */
+ orientation; /* photo orientation of image */
MagickBooleanType
- taint, /* has image been modified since reading */
- matte; /* is transparency channel defined and active */
+ taint, /* has image been modified since reading */
+ matte; /* is transparency channel defined and active */
size_t
- columns, /* physical size of image */
+ columns, /* physical size of image */
rows,
- depth, /* depth of image on read/write */
- colors; /* size of color table on read */
+ depth, /* depth of image on read/write */
+ colors; /* Size of color table, or actual color count */
+ /* Only valid if image is not DirectClass */
- PixelPacket
+ PixelInfo
*colormap,
- background_color, /* current background color attribute */
- border_color, /* current bordercolor attribute */
- matte_color; /* current mattecolor attribute */
+ background_color, /* current background color attribute */
+ border_color, /* current bordercolor attribute */
+ matte_color, /* current mattecolor attribute */
+ transparent_color; /* color for 'transparent' color index in GIF */
double
gamma;
*geometry;
ssize_t
- offset;
+ offset; /* ??? */
- double
- x_resolution, /* image resolution/density */
- y_resolution;
+ PointInfo
+ resolution; /* image resolution/density */
RectangleInfo
page, /* virtual canvas size and offset of image */
extract_info;
double
- bias, /* depreciated ? */
- blur,
- fuzz; /* current color fuzz attribute */
+ fuzz; /* current color fuzz attribute - make image_info */
FilterTypes
filter; /* resize/distort filter to apply */
DisposeType
dispose; /* GIF animation disposal method */
- struct _Image
- *clip_mask;
-
size_t
scene, /* index of image in multi-image file */
delay; /* Animation delay time */
ticks_per_second; /* units for delay time, default 100 for GIF */
size_t
- iterations,
+ iterations, /* ??? */
total_colors;
ssize_t
- start_loop;
+ start_loop; /* ??? */
PixelInterpolateMethod
interpolate; /* Interpolation of color for between pixel lookups */
MagickBooleanType
black_point_compensation;
- PixelPacket
- transparent_color; /* color for 'transparent' color index in GIF */
-
- struct _Image
- *mask;
-
RectangleInfo
tile_offset;
extent; /* Size of image read from disk */
MagickBooleanType
- ping;
+ ping; /* no image data read, just attributes */
+
+ MagickBooleanType
+ mask;
size_t
number_channels,
number_meta_channels,
metacontent_extent;
- MagickBooleanType
- sync;
-
ChannelType
channel_mask;
*ascii85;
ProfileInfo
- color_profile,
- iptc_profile,
*generic_profile;
char
magick[MaxTextExtent]; /* images file format (file magic) */
size_t
- magick_columns,
+ magick_columns, /* size of image when read/created */
magick_rows;
BlobInfo
*blob; /* image file as in-memory string of 'extent' */
- ExceptionInfo
- exception; /* Error handling report */
-
MagickBooleanType
debug; /* debug output attribute */
SemaphoreInfo
*semaphore;
+
struct _Image
- *previous, /* Image sequence list links */
- *list,
+ *list, /* Undo/Redo image processing list (for display) */
+ *previous, /* Image list links */
*next;
size_t
struct _ImageInfo
{
CompressionType
- compression;
+ compression; /* compression method when reading/saving image */
OrientationType
- orientation;
+ orientation; /* orientation setting */
MagickBooleanType
- temporary,
- adjoin,
+ temporary, /* image file to be deleted after read "empemeral:" */
+ adjoin, /* save images to seperate scene files */
affirm,
antialias;
char
- *size,
- *extract,
+ *size, /* image generation size */
+ *extract, /* crop/resize string on image read */
*page,
- *scenes;
+ *scenes; /* scene numbers that is to be read in */
size_t
- scene,
- number_scenes,
- depth;
+ scene, /* starting value for image save numbering */
+ number_scenes, /* total number of images in list - for escapes */
+ depth; /* current read/save depth of images */
InterlaceType
interlace; /* interlace for image write */
char
*sampling_factor, /* JPEG write sampling factor */
*server_name, /* X windows server name - display/animate */
- *font, /* draw_info */
+ *font, /* DUP for draw_info */
*texture, /* montage/display background tile */
- *density;
+ *density; /* DUP for image and draw_info */
double
pointsize,
- fuzz;
+ fuzz; /* current color fuzz attribute */
- PixelPacket
- background_color,
- border_color,
- matte_color;
+ PixelInfo
+ background_color, /* user set background color */
+ border_color, /* user set border color */
+ matte_color, /* matte (frame) color */
+ transparent_color; /* color for transparent index in color tables */
+ /* NB: fill color is only needed in draw_info! */
+ /* the same for undercolor (for font drawing) */
MagickBooleanType
- dither, /* dither enable-disable */
- monochrome; /* read/write pcl,pdf,ps,xps as monocrome image */
-
- size_t
- colors; /* record the user requested color reduction! */
+ dither, /* dither enable-disable */
+ monochrome; /* read/write pcl,pdf,ps,xps as monocrome image */
ColorspaceType
colorspace;
+ CompositeOperator
+ compose;
+
ImageType
type;
char
*view;
- /* authenticate -- moved to ImageOptions() */
ChannelType
channel;
void
*options; /* splay tree of use options */
- VirtualPixelMethod
- virtual_pixel_method;
-
- PixelPacket
- transparent_color;
-
void
*profile;
*AppendImages(const Image *,const MagickBooleanType,ExceptionInfo *),
*CloneImage(const Image *,const size_t,const size_t,const MagickBooleanType,
ExceptionInfo *),
- *CombineImages(const Image *,ExceptionInfo *),
*DestroyImage(Image *),
*GetImageClipMask(const Image *,ExceptionInfo *),
*GetImageMask(const Image *,ExceptionInfo *),
- *NewMagickImage(const ImageInfo *,const size_t,const size_t,
- const PixelInfo *),
+ *NewMagickImage(const ImageInfo *,const size_t,const size_t,const PixelInfo *,
+ ExceptionInfo *),
*ReferenceImage(Image *),
- *SeparateImages(const Image *,ExceptionInfo *),
*SmushImages(const Image *,const MagickBooleanType,const ssize_t,
ExceptionInfo *);
ListMagickInfo(FILE *,ExceptionInfo *),
ModifyImage(Image **,ExceptionInfo *),
ResetImagePage(Image *,const char *),
- SeparateImage(Image *),
- SetImageAlpha(Image *,const Quantum),
+ SetImageAlpha(Image *,const Quantum,ExceptionInfo *),
SetImageAlphaChannel(Image *,const AlphaChannelType,ExceptionInfo *),
- SetImageBackgroundColor(Image *),
- SetImageClipMask(Image *,const Image *,ExceptionInfo *),
- SetImageColor(Image *,const PixelInfo *),
+ SetImageBackgroundColor(Image *,ExceptionInfo *),
+ SetImageColor(Image *,const PixelInfo *,ExceptionInfo *),
SetImageExtent(Image *,const size_t,const size_t,ExceptionInfo *),
SetImageInfo(ImageInfo *,const unsigned int,ExceptionInfo *),
SetImageMask(Image *,const Image *,ExceptionInfo *),
SetImageStorageClass(Image *,const ClassType,ExceptionInfo *),
- SetImageType(Image *,const ImageType,ExceptionInfo *),
- StripImage(Image *),
- SyncImage(Image *),
- SyncImageSettings(const ImageInfo *,Image *),
- SyncImagesSettings(ImageInfo *,Image *);
+ StripImage(Image *,ExceptionInfo *),
+ SyncImage(Image *,ExceptionInfo *),
+ SyncImageSettings(const ImageInfo *,Image *,ExceptionInfo *),
+ SyncImagesSettings(ImageInfo *,Image *,ExceptionInfo *);
extern MagickExport size_t
- InterpretImageFilename(const ImageInfo *,Image *,const char *,int,char *);
+ InterpretImageFilename(const ImageInfo *,Image *,const char *,int,char *,
+ ExceptionInfo *);
extern MagickExport ssize_t
GetImageReferenceCount(Image *);
extern MagickExport VirtualPixelMethod
GetImageVirtualPixelMethod(const Image *),
- SetImageVirtualPixelMethod(const Image *,const VirtualPixelMethod);
+ SetImageVirtualPixelMethod(Image *,const VirtualPixelMethod,ExceptionInfo *);
extern MagickExport void
AcquireNextImage(const ImageInfo *,Image *,ExceptionInfo *),
DestroyImagePixels(Image *),
DisassociateImageStream(Image *),
- GetImageException(Image *,ExceptionInfo *),
GetImageInfo(ImageInfo *),
SetImageInfoBlob(ImageInfo *,const void *,const size_t),
SetImageInfoFile(ImageInfo *,FILE *);