#ifndef _IMAGEMAGICK_VALIDATE_H
#define _IMAGEMAGICK_VALIDATE_H
#define ReferenceFilename "rose:"
#define ReferenceImageFormat "MIFF"
static const char
*compare_options[] =
{
"-metric RMSE -fuzz 5%",
"-metric AE -fuzz 5%",
(const char *) NULL
};
static const char
*composite_options[] =
{
"",
"-compose Add",
"-compose Atop",
"-compose Blend",
"-compose Bumpmap",
"-compose ChangeMask",
"-compose Clear",
"-compose ColorBurn",
"-compose ColorDodge",
"-compose Colorize",
"-compose CopyBlack",
"-compose CopyBlue",
"-compose CopyCyan",
"-compose CopyGreen",
"-compose Copy",
"-compose CopyMagenta",
"-compose CopyOpacity",
"-compose CopyRed",
"-compose CopyYellow",
"-compose Darken",
"-compose Divide",
"-compose Dst",
"-compose Difference",
"-compose Displace",
"-compose Dissolve",
"-compose DstAtop",
"-compose DstIn",
"-compose DstOut",
"-compose DstOver",
"-compose Dst",
"-compose Exclusion",
"-compose HardLight",
"-compose Hue",
"-compose In",
"-compose Lighten",
"-compose LinearLight",
"-compose Luminize",
"-compose Minus",
"-compose Modulate",
"-compose Multiply",
"-compose None",
"-compose Out",
"-compose Overlay",
"-compose Over",
"-compose Plus",
"-compose Replace",
"-compose Saturate",
"-compose Screen",
"-compose SoftLight",
"-compose Src",
"-compose SrcAtop",
"-compose SrcIn",
"-compose SrcOut",
"-compose SrcOver",
"-compose Src",
"-compose Subtract",
"-compose Threshold",
"-compose Xor",
"-geometry +35+65 -label Magick",
(const char *) NULL
};
static const char
*convert_options[] =
{
"-noop",
"-affine 1,0,0.785,1,0,0 -transform",
"-black-threshold 20%",
"-blur 0x0.5",
"-border 6x6",
"-canny 0x1+10%+80%",
"-charcoal 0x1",
"-chop 8x6+20+30",
"-colors 16",
"-colorspace CMYK",
"-colorspace GRAY",
"-colorspace HSL",
"-colorspace HWB",
"-colorspace OHTA",
"-colorspace YCbCr",
"-colorspace YIQ",
"-colorspace YUV",
"-contrast",
"+contrast",
"-convolve 1,1,1,1,4,1,1,1,1",
"-colorize 30%/20%/50%",
"-crop 17x9+10+10",
"-cycle 200",
"-despeckle",
"-draw \"rectangle 20,10 80,50\"",
"-edge 0x1",
"-emboss 0x1",
"-enhance",
"-equalize",
"-flip",
"-flop",
"-frame 15x15+3+3",
"-fx \"(1.0/(1.0+exp(10.0*(0.5-u)))-0.006693)*1.0092503\"",
"-gamma 1.6",
"-gaussian 0x0.5",
"-implode 0.5",
"-implode -1",
"-label Magick",
"-lat 10x10-5%",
"-level 10%,1.2,90%",
"-map netscape:",
"-median 2",
"-modulate 110/100/95",
"-monochrome",
"-motion-blur 0x3+30",
"-negate",
"+noise Uniform",
"+noise Gaussian",
"+noise Multiplicative",
"+noise Impulse",
"+noise Laplacian",
"+noise Poisson",
"-noise 2",
"-normalize",
"-fill blue -fuzz 35% -opaque red",
"-ordered-dither 2x2",
"-paint 0x1",
"-raise 10x10",
"-random-threshold 10%",
"-recolor '0.9 0 0, 0 0.9 0, 0 0 1.2'",
"-density 75x75 -resample 50x50",
"-resize 10%",
"-resize 50%",
"-resize 50x150%",
"-resize 100%",
"-resize 150%",
"-resize 150x50%",
"-roll +20+10",
"-rotate 0",
"-rotate 45",
"-rotate 90",
"-rotate 180",
"-rotate 270",
"-sample 5%",
"-sample 50%",
"-sample 50x150%",
"-sample 100%",
"-sample 150%",
"-sample 150x50%",
"-scale 5%",
"-scale 50%",
"-scale 50x150%",
"-scale 100%",
"-scale 150%",
"-scale 150x50%",
"-segment 1x1.5",
"-shade 30x30",
"-sharpen 0x1.0",
"-shave 10x10",
"-shear 45x45",
"-size 130x194",
"-solarize 50%",
"-spread 3",
"-swirl 90",
"-threshold 35%",
"-fuzz 35% -transparent red",
"-fuzz 5% -trim",
"-unsharp 0x1.0+20+1",
"-wave 25x150",
"-white-threshold 80%",
(const char *) NULL
};
static const char
*identify_options[] =
{
"",
"-verbose",
"-features 1 -verbose",
"-unique -verbose",
(const char *) NULL
};
static const char
*montage_options[] =
{
"",
"-frame 5",
"-geometry 13x19+10+5 -gravity Center",
"-label %f",
"-pointsize 10",
"-shadow",
"-tile 3x3",
(const char *) NULL
};
static const char
*stream_options[] =
{
"",
(const char *) NULL
};
struct ReferenceFormats
{
const char
*magick;
CompressionType
compression;
double
fuzz;
};
static const struct ReferenceFormats
reference_formats[] =
{
{ "ART", UndefinedCompression, 0.0 },
{ "AVS", UndefinedCompression, 0.0 },
{ "BMP", UndefinedCompression, 0.0 },
{ "BMP2", UndefinedCompression, 0.0 },
{ "BMP3", UndefinedCompression, 0.0 },
{ "CIN", UndefinedCompression, 0.0 },
{ "CMYK", UndefinedCompression, 0.0 },
{ "CMYKA", UndefinedCompression, 0.0 },
{ "CUT", UndefinedCompression, 0.0 },
{ "DCM", UndefinedCompression, 0.0 },
{ "DCR", UndefinedCompression, 0.0 },
{ "DCX", UndefinedCompression, 0.0 },
{ "DDS", UndefinedCompression, 0.0 },
{ "DFONT", UndefinedCompression, 0.0 },
{ "DJVU", UndefinedCompression, 0.0 },
{ "DNG", UndefinedCompression, 0.0 },
{ "DOT", UndefinedCompression, 0.0 },
{ "DPS", UndefinedCompression, 0.0 },
{ "DPX", UndefinedCompression, 0.004 },
{ "ERF", UndefinedCompression, 0.0 },
{ "EXR", UndefinedCompression, 0.0 },
{ "FPX", UndefinedCompression, 0.0 },
{ "FRACTAL", UndefinedCompression, 0.0 },
{ "GIF", UndefinedCompression, 0.0 },
{ "GIF87", UndefinedCompression, 0.0 },
{ "GRAY", UndefinedCompression, 0.004 },
{ "HRZ", UndefinedCompression, 0.0 },
{ "HTM", UndefinedCompression, 0.0 },
{ "HTML", UndefinedCompression, 0.0 },
{ "ICB", UndefinedCompression, 0.0 },
{ "ICO", UndefinedCompression, 0.0 },
{ "ICON", UndefinedCompression, 0.0 },
{ "INFO", UndefinedCompression, 0.0 },
{ "JBG", UndefinedCompression, 0.0 },
{ "JNG", UndefinedCompression, 0.004 },
{ "JNG", JPEGCompression, 0.004 },
{ "JP2", UndefinedCompression, 0.004 },
{ "J2K", UndefinedCompression, 0.004 },
{ "JPEG", UndefinedCompression, 0.004 },
{ "JPG", UndefinedCompression, 0.004 },
{ "K25", UndefinedCompression, 0.0 },
{ "KDC", UndefinedCompression, 0.0 },
{ "MATTE", UndefinedCompression, 0.0 },
{ "MIFF", UndefinedCompression, 0.0 },
{ "MNG", UndefinedCompression, 0.0 },
{ "MONO", UndefinedCompression, 0.0 },
{ "MRW", UndefinedCompression, 0.0 },
{ "MTV", UndefinedCompression, 0.0 },
{ "NEF", UndefinedCompression, 0.0 },
{ "ORF", UndefinedCompression, 0.0 },
{ "OTB", UndefinedCompression, 0.0 },
{ "OTF", UndefinedCompression, 0.0 },
{ "PAL", UndefinedCompression, 0.0 },
{ "PAM", UndefinedCompression, 0.0 },
{ "PBM", UndefinedCompression, 0.0 },
{ "PCT", UndefinedCompression, 0.004 },
{ "PCX", UndefinedCompression, 0.0 },
{ "PEF", UndefinedCompression, 0.0 },
{ "PFA", UndefinedCompression, 0.0 },
{ "PFB", UndefinedCompression, 0.0 },
{ "PFM", UndefinedCompression, 0.004 },
{ "PGM", UndefinedCompression, 0.0 },
{ "PGX", UndefinedCompression, 0.0 },
#if !defined(MAGICKCORE_HDRI_SUPPORT)
{ "PICT", UndefinedCompression, 0.004 },
#endif
{ "PIX", UndefinedCompression, 0.0 },
{ "PJPEG", UndefinedCompression, 0.004 },
{ "PLASMA", UndefinedCompression, 0.0 },
{ "PNG", UndefinedCompression, 0.0 },
{ "PNG8", UndefinedCompression, 0.0 },
{ "PNG24", UndefinedCompression, 0.0 },
{ "PNG32", UndefinedCompression, 0.0 },
{ "PNG48", UndefinedCompression, 0.0 },
{ "PNG64", UndefinedCompression, 0.0 },
{ "PNG00", UndefinedCompression, 0.0 },
{ "PNM", UndefinedCompression, 0.0 },
{ "PPM", UndefinedCompression, 0.0 },
{ "PREVIEW", UndefinedCompression, 0.0 },
{ "PTIF", UndefinedCompression, 0.0 },
{ "PWP", UndefinedCompression, 0.0 },
{ "RADIAL-GR", UndefinedCompression, 0.0 },
{ "RAF", UndefinedCompression, 0.0 },
{ "RAS", UndefinedCompression, 0.0 },
{ "RGB", UndefinedCompression, 0.0 },
{ "RGBA", UndefinedCompression, 0.004 },
{ "RGBO", UndefinedCompression, 0.004 },
{ "RLA", UndefinedCompression, 0.0 },
{ "RLE", UndefinedCompression, 0.0 },
{ "SCR", UndefinedCompression, 0.0 },
{ "SCT", UndefinedCompression, 0.0 },
{ "SFW", UndefinedCompression, 0.0 },
{ "SGI", UndefinedCompression, 0.0 },
{ "SHTML", UndefinedCompression, 0.0 },
{ "SR2", UndefinedCompression, 0.0 },
{ "SRF", UndefinedCompression, 0.0 },
{ "STEGANO", UndefinedCompression, 0.0 },
{ "SUN", UndefinedCompression, 0.0 },
{ "TGA", UndefinedCompression, 0.0 },
{ "TIFF", UndefinedCompression, 0.0 },
{ "TIFF64", UndefinedCompression, 0.0 },
{ "TILE", UndefinedCompression, 0.0 },
{ "TIM", UndefinedCompression, 0.0 },
{ "TTC", UndefinedCompression, 0.0 },
{ "TTF", UndefinedCompression, 0.0 },
{ "TXT", UndefinedCompression, 0.0 },
{ "UIL", UndefinedCompression, 0.0 },
{ "UYVY", UndefinedCompression, 0.0 },
{ "VDA", UndefinedCompression, 0.0 },
{ "VICAR", UndefinedCompression, 0.0 },
{ "VIFF", UndefinedCompression, 0.004 },
{ "VST", UndefinedCompression, 0.0 },
{ "WBMP", UndefinedCompression, 0.0 },
{ "WPG", UndefinedCompression, 0.0 },
{ "X3F", UndefinedCompression, 0.0 },
{ "XBM", UndefinedCompression, 0.0 },
{ "XCF", UndefinedCompression, 0.0 },
{ "XPM", UndefinedCompression, 0.004 },
{ "XPS", UndefinedCompression, 0.0 },
{ "XV", UndefinedCompression, 0.004 },
#if !defined(MAGICKCORE_WINDOWS_SUPPORT)
{ "XWD", UndefinedCompression, 0.0 },
#endif
{ "YUV", UndefinedCompression, 0.0 },
{ "YCbCr", UndefinedCompression, 0.0 },
{ "YCbCrA", UndefinedCompression, 0.0 },
#if defined(MAGICKCORE_GS_DELEGATE)
{ "AI", UndefinedCompression, 0.0 },
{ "EPDF", UndefinedCompression, 0.0 },
{ "EPI", UndefinedCompression, 0.0 },
{ "EPS", UndefinedCompression, 0.0 },
{ "EPS2", UndefinedCompression, 0.0 },
{ "EPS3", UndefinedCompression, 0.0 },
{ "EPSF", UndefinedCompression, 0.0 },
{ "EPSI", UndefinedCompression, 0.0 },
{ "EPT", UndefinedCompression, 0.0 },
{ "PDF", UndefinedCompression, 0.0 },
{ "PDF", ZipCompression, 0.0 },
{ "PDF", FaxCompression, 0.0 },
{ "PDF", JPEGCompression, 0.004 },
{ "PDF", RLECompression, 0.0 },
{ "PDF", LZWCompression, 0.0 },
{ "PDFA", UndefinedCompression, 0.0 },
{ "PS", UndefinedCompression, 0.0 },
{ "PS2", UndefinedCompression, 0.0 },
{ "PS3", UndefinedCompression, 0.0 },
{ "PS3", ZipCompression, 0.0 },
{ "PS3", FaxCompression, 0.0 },
{ "PS3", JPEGCompression, 0.004 },
{ "PS3", RLECompression, 0.0 },
{ "PS3", LZWCompression, 0.0 },
#endif
{ (const char *) NULL, UndefinedCompression, 0.0 }
};
static const char
*reference_map[] =
{
"bgro",
"bgrp",
"bgr",
"cmyk",
"cmy",
"i",
"prgb",
"rgba",
"rgbo",
"rgb",
(char *) NULL
};
struct ReferenceStorage
{
StorageType
type;
size_t
quantum;
};
static const struct ReferenceStorage
reference_storage[] =
{
{ CharPixel, sizeof(unsigned char) },
{ DoublePixel, sizeof(double) },
{ FloatPixel, sizeof(float) },
{ IntegerPixel, sizeof(unsigned int) },
{ LongPixel, sizeof(size_t) },
{ ShortPixel, sizeof(unsigned short) },
{ UndefinedPixel, 0 }
};
struct ReferenceTypes
{
ImageType
type;
size_t
depth;
};
static const struct ReferenceTypes
reference_types[] =
{
{ TrueColorType, 8 },
{ TrueColorMatteType, 8 },
{ GrayscaleType, 8 },
{ GrayscaleMatteType, 8 },
{ PaletteType, 8 },
{ PaletteMatteType, 8 },
{ PaletteBilevelMatteType, 8 },
{ BilevelType, 1 },
{ ColorSeparationType, 8 },
{ ColorSeparationMatteType, 8 },
{ TrueColorType, 10 },
{ TrueColorType, 12 },
{ TrueColorType, 16 },
{ UndefinedType, 0 }
};
#endif