10#if !defined (Magick_Color_header)
11#define Magick_Color_header
13#include "Magick++/Include.h"
18 class MagickPPExport Color;
21 MagickPPExport
int operator ==
23 MagickPPExport
int operator !=
25 MagickPPExport
int operator >
27 MagickPPExport
int operator <
29 MagickPPExport
int operator >=
31 MagickPPExport
int operator <=
73 Color(
const Magick::Quantum red_,
const Magick::Quantum green_,
74 const Magick::Quantum blue_);
77 Color(
const Magick::Quantum red_,
const Magick::Quantum green_,
78 const Magick::Quantum blue_,
const Magick::Quantum alpha_);
81 Color(
const Magick::Quantum cyan_,
const Magick::Quantum magenta_,
82 const Magick::Quantum yellow_,
const Magick::Quantum black_,
83 const Magick::Quantum alpha_);
86 Color(
const char *color_);
92 Color(
const PixelInfo &color_);
95 Color(
const std::string &color_);
104 const Color& operator=(
const char *color);
107 const Color& operator=(
const PixelInfo &color_);
110 const Color& operator=(
const std::string &color);
113 operator PixelInfo()
const;
116 operator std::string()
const;
120 bool isFuzzyEquivalent(
const Color &color_,
const double fuzz_)
const;
123 void isValid(
const bool valid_);
124 bool isValid(
void)
const;
127 Magick::Color::PixelType pixelType(
void)
const;
130 void quantumAlpha(
const Quantum alpha_);
131 Quantum quantumAlpha(
void)
const;
134 void quantumBlack(
const Quantum black_);
135 Quantum quantumBlack(
void)
const;
138 void quantumBlue(
const Quantum blue_);
139 Quantum quantumBlue(
void)
const;
142 void quantumGreen(
const Quantum green_);
143 Quantum quantumGreen(
void)
const;
146 void quantumRed(
const Quantum red_);
147 Quantum quantumRed(
void)
const;
153 Color(PixelInfo *rep_,PixelType pixelType_);
156 Color(PixelType pixelType_);
160 void pixel(PixelInfo *rep_,PixelType pixelType_);
163 static Quantum scaleDoubleToQuantum(
const double double_);
166 static double scaleQuantumToDouble(
const Quantum quantum_);
180 PixelType _pixelType;
185 void setAlpha(
const Magick::Quantum alpha_);
188 void setPixelType(
const PixelInfo &color_);
202 ColorCMYK(
const double cyan_,
const double magenta_,
const double yellow_,
203 const double black_);
206 ColorCMYK(
const double cyan_,
const double magenta_,
const double yellow_,
207 const double black_,
const double alpha_);
216 void alpha(
const double alpha_);
217 double alpha(
void)
const;
220 void black(
const double black_);
221 double black(
void)
const;
224 void cyan(
const double cyan_);
225 double cyan(
void)
const;
228 void magenta(
const double magenta_);
229 double magenta(
void)
const;
232 void yellow(
const double yellow_);
233 double yellow(
void)
const;
238 ColorCMYK(PixelInfo *rep_,PixelType pixelType_);
263 void shade(
const double shade_);
264 double shade(
void)
const;
272 ColorGray(PixelInfo *rep_,PixelType pixelType_);
290 ColorHSL(
const double hue_,
const double saturation_,
291 const double lightness_);
300 void hue(
const double hue_);
301 double hue(
void)
const;
304 void lightness(
const double lightness_);
305 double lightness(
void)
const;
308 void saturation(
const double saturation_);
309 double saturation(
void)
const;
314 ColorHSL(PixelInfo *rep_,PixelType pixelType_);
342 void mono(
const bool mono_);
343 bool mono(
void)
const;
348 ColorMono(PixelInfo* rep_,PixelType pixelType_);
362 ColorRGB(
const double red_,
const double green_,
const double blue_);
365 ColorRGB(
const double red_,
const double green_,
const double blue_,
366 const double alpha_);
375 void alpha(
const double alpha_);
376 double alpha(
void)
const;
379 void blue(
const double blue_);
380 double blue(
void)
const;
383 void green(
const double green_);
384 double green(
void)
const;
387 void red(
const double red_);
388 double red(
void)
const;
393 ColorRGB(PixelInfo *rep_,PixelType pixelType_);
414 ColorYUV(
const double y_,
const double u_,
const double v_);
423 void u(
const double u_);
424 double u(
void)
const;
427 void v(
const double v_);
428 double v(
void)
const;
431 void y(
const double y_);
432 double y(
void)
const;
437 ColorYUV(PixelInfo *rep_,PixelType pixelType_);
441 void convert(
const double y_,
const double u_,
const double v_);