00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef _MAGICKCORE_COLOR_H
00019 #define _MAGICKCORE_COLOR_H
00020
00021 #if defined(__cplusplus) || defined(c_plusplus)
00022 extern "C" {
00023 #endif
00024
00025 #include <magick/pixel.h>
00026 #include <magick/exception.h>
00027
00028 typedef enum
00029 {
00030 UndefinedCompliance,
00031 NoCompliance = 0x0000,
00032 SVGCompliance = 0x0001,
00033 X11Compliance = 0x0002,
00034 XPMCompliance = 0x0004,
00035 AllCompliance = 0x7fffffff
00036 } ComplianceType;
00037
00038 typedef struct _ColorInfo
00039 {
00040 char
00041 *path,
00042 *name;
00043
00044 ComplianceType
00045 compliance;
00046
00047 MagickPixelPacket
00048 color;
00049
00050 MagickBooleanType
00051 stealth;
00052
00053 struct _ColorInfo
00054 *previous,
00055 *next;
00056
00057 unsigned long
00058 signature;
00059 } ColorInfo;
00060
00061 typedef struct _ColorPacket
00062 {
00063 PixelPacket
00064 pixel;
00065
00066 IndexPacket
00067 index;
00068
00069 MagickSizeType
00070 count;
00071 } ColorPacket;
00072
00073 typedef struct _ErrorInfo
00074 {
00075 double
00076 mean_error_per_pixel,
00077 normalized_mean_error,
00078 normalized_maximum_error;
00079 } ErrorInfo;
00080
00081 extern MagickExport char
00082 **GetColorList(const char *,unsigned long *,ExceptionInfo *);
00083
00084 extern MagickExport const ColorInfo
00085 *GetColorInfo(const char *,ExceptionInfo *),
00086 **GetColorInfoList(const char *,unsigned long *,ExceptionInfo *);
00087
00088 extern MagickExport ColorPacket
00089 *GetImageHistogram(const Image *,unsigned long *,ExceptionInfo *);
00090
00091 extern MagickExport Image
00092 *UniqueImageColors(const Image *,ExceptionInfo *);
00093
00094 extern MagickExport MagickBooleanType
00095 IsColorSimilar(const Image *,const PixelPacket *,const PixelPacket *),
00096 IsGrayImage(const Image *,ExceptionInfo *),
00097 IsHistogramImage(const Image *,ExceptionInfo *),
00098 IsImageSimilar(const Image *,const Image *,long *x,long *y,ExceptionInfo *),
00099 IsMagickColorSimilar(const MagickPixelPacket *,const MagickPixelPacket *),
00100 IsMonochromeImage(const Image *,ExceptionInfo *),
00101 IsOpacitySimilar(const Image *,const PixelPacket *,const PixelPacket *),
00102 IsOpaqueImage(const Image *,ExceptionInfo *),
00103 IsPaletteImage(const Image *,ExceptionInfo *),
00104 ListColorInfo(FILE *,ExceptionInfo *),
00105 QueryColorDatabase(const char *,PixelPacket *,ExceptionInfo *),
00106 QueryColorname(const Image *,const PixelPacket *,const ComplianceType,char *,
00107 ExceptionInfo *),
00108 QueryMagickColor(const char *,MagickPixelPacket *,ExceptionInfo *),
00109 QueryMagickColorname(const Image *,const MagickPixelPacket *,
00110 const ComplianceType,const MagickBooleanType,char *,ExceptionInfo *);
00111
00112 extern MagickExport unsigned long
00113 GetNumberColors(const Image *,FILE *,ExceptionInfo *);
00114
00115 extern MagickExport void
00116 ConcatenateColorComponent(const MagickPixelPacket *,const ChannelType,
00117 const ComplianceType,char *),
00118 DestroyColorList(void),
00119 GetColorTuple(const MagickPixelPacket *,const MagickBooleanType,char *);
00120
00121 #if defined(__cplusplus) || defined(c_plusplus)
00122 }
00123 #endif
00124
00125 #endif