2 Copyright 1999-2010 ImageMagick Studio LLC, a non-profit organization
3 dedicated to making software imaging solutions freely available.
5 You may not use this file except in compliance with the License.
6 obtain a copy of the License at
8 http://www.imagemagick.org/script/license.php
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
16 MagickWand image Methods.
19 #ifndef _MAGICKWAND_MAGICK_IMAGE_H
20 #define _MAGICKWAND_MAGICK_IMAGE_H
22 #if defined(__cplusplus) || defined(c_plusplus)
26 extern WandExport ChannelFeatures
27 *MagickGetImageChannelFeatures(MagickWand *,const size_t);
29 extern WandExport ChannelStatistics
30 *MagickGetImageChannelStatistics(MagickWand *);
32 extern WandExport char
33 *MagickGetImageFilename(MagickWand *),
34 *MagickGetImageFormat(MagickWand *),
35 *MagickGetImageSignature(MagickWand *),
36 *MagickIdentifyImage(MagickWand *);
38 extern WandExport ColorspaceType
39 MagickGetImageColorspace(MagickWand *);
41 extern WandExport CompositeOperator
42 MagickGetImageCompose(MagickWand *);
44 extern WandExport CompressionType
45 MagickGetImageCompression(MagickWand *);
47 extern WandExport DisposeType
48 MagickGetImageDispose(MagickWand *);
50 extern WandExport double
51 *MagickGetImageChannelDistortions(MagickWand *,const MagickWand *,
53 MagickGetImageFuzz(MagickWand *),
54 MagickGetImageGamma(MagickWand *),
55 MagickGetImageTotalInkDensity(MagickWand *);
57 extern WandExport GravityType
58 MagickGetImageGravity(MagickWand *);
60 extern WandExport Image
61 *MagickDestroyImage(Image *),
62 *GetImageFromMagickWand(const MagickWand *);
64 extern WandExport ImageType
65 MagickGetImageType(MagickWand *);
67 extern WandExport InterlaceType
68 MagickGetImageInterlaceScheme(MagickWand *);
70 extern WandExport InterpolatePixelMethod
71 MagickGetImageInterpolateMethod(MagickWand *);
73 extern WandExport MagickBooleanType
74 MagickAdaptiveBlurImage(MagickWand *,const double,const double),
75 MagickAdaptiveBlurImageChannel(MagickWand *,const ChannelType,const double,
77 MagickAdaptiveResizeImage(MagickWand *,const size_t,const size_t),
78 MagickAdaptiveSharpenImage(MagickWand *,const double,const double),
79 MagickAdaptiveSharpenImageChannel(MagickWand *,const ChannelType,const double,
81 MagickAdaptiveThresholdImage(MagickWand *,const size_t,const size_t,
83 MagickAddImage(MagickWand *,const MagickWand *),
84 MagickAddNoiseImage(MagickWand *,const NoiseType),
85 MagickAddNoiseImageChannel(MagickWand *,const ChannelType,const NoiseType),
86 MagickAffineTransformImage(MagickWand *,const DrawingWand *),
87 MagickAnnotateImage(MagickWand *,const DrawingWand *,const double,
88 const double,const double,const char *),
89 MagickAnimateImages(MagickWand *,const char *),
90 MagickAutoGammaImage(MagickWand *),
91 MagickAutoGammaImageChannel(MagickWand *,const ChannelType),
92 MagickAutoLevelImage(MagickWand *),
93 MagickAutoLevelImageChannel(MagickWand *,const ChannelType),
94 MagickBlackThresholdImage(MagickWand *,const PixelWand *),
95 MagickBlueShiftImage(MagickWand *,const double),
96 MagickBlurImage(MagickWand *,const double,const double),
97 MagickBlurImageChannel(MagickWand *,const ChannelType,const double,
99 MagickBorderImage(MagickWand *,const PixelWand *,const size_t,const size_t),
100 MagickBrightnessContrastImage(MagickWand *,const double,const double),
101 MagickBrightnessContrastImageChannel(MagickWand *,const ChannelType,
102 const double,const double),
103 MagickCharcoalImage(MagickWand *,const double,const double),
104 MagickChopImage(MagickWand *,const size_t,const size_t,const ssize_t,
106 MagickClampImage(MagickWand *),
107 MagickClampImageChannel(MagickWand *,const ChannelType),
108 MagickClipImage(MagickWand *),
109 MagickClipImagePath(MagickWand *,const char *,const MagickBooleanType),
110 MagickClutImage(MagickWand *,const MagickWand *),
111 MagickClutImageChannel(MagickWand *,const ChannelType,const MagickWand *),
112 MagickColorDecisionListImage(MagickWand *,const char *),
113 MagickColorizeImage(MagickWand *,const PixelWand *,const PixelWand *),
114 MagickColorMatrixImage(MagickWand *,const KernelInfo *),
115 MagickCommentImage(MagickWand *,const char *),
116 MagickCompositeImage(MagickWand *,const MagickWand *,const CompositeOperator,
117 const ssize_t,const ssize_t),
118 MagickCompositeImageChannel(MagickWand *,const ChannelType,const MagickWand *, const CompositeOperator,const ssize_t,const ssize_t),
119 MagickConstituteImage(MagickWand *,const size_t,const size_t,const char *,
120 const StorageType,const void *),
121 MagickContrastImage(MagickWand *,const MagickBooleanType),
122 MagickContrastStretchImage(MagickWand *,const double,const double),
123 MagickContrastStretchImageChannel(MagickWand *,const ChannelType,const double,
125 MagickConvolveImage(MagickWand *,const size_t,const double *),
126 MagickConvolveImageChannel(MagickWand *,const ChannelType,const size_t,
128 MagickCropImage(MagickWand *,const size_t,const size_t,const ssize_t,
130 MagickCycleColormapImage(MagickWand *,const ssize_t),
131 MagickDecipherImage(MagickWand *,const char *),
132 MagickDeskewImage(MagickWand *,const double),
133 MagickDespeckleImage(MagickWand *),
134 MagickDisplayImage(MagickWand *,const char *),
135 MagickDisplayImages(MagickWand *,const char *),
136 MagickDistortImage(MagickWand *,const DistortImageMethod,const size_t,
137 const double *,const MagickBooleanType),
138 MagickDrawImage(MagickWand *,const DrawingWand *),
139 MagickEdgeImage(MagickWand *,const double),
140 MagickEmbossImage(MagickWand *,const double,const double),
141 MagickEncipherImage(MagickWand *,const char *),
142 MagickEnhanceImage(MagickWand *),
143 MagickEqualizeImage(MagickWand *),
144 MagickEqualizeImageChannel(MagickWand *,const ChannelType),
145 MagickEvaluateImage(MagickWand *,const MagickEvaluateOperator,const double),
146 MagickEvaluateImageChannel(MagickWand *,const ChannelType,
147 const MagickEvaluateOperator,const double),
148 MagickExportImagePixels(MagickWand *,const ssize_t,const ssize_t,
149 const size_t,const size_t,const char *,const StorageType,void *),
150 MagickExtentImage(MagickWand *,const size_t,const size_t,const ssize_t,
152 MagickFilterImage(MagickWand *,const KernelInfo *),
153 MagickFilterImageChannel(MagickWand *,const ChannelType,const KernelInfo *),
154 MagickFlipImage(MagickWand *),
155 MagickFloodfillPaintImage(MagickWand *,const ChannelType,const PixelWand *,
156 const double,const PixelWand *,const ssize_t,const ssize_t,
157 const MagickBooleanType),
158 MagickFlopImage(MagickWand *),
159 MagickForwardFourierTransformImage(MagickWand *,const MagickBooleanType),
160 MagickFrameImage(MagickWand *,const PixelWand *,const size_t,const size_t,
161 const ssize_t,const ssize_t),
162 MagickFunctionImage(MagickWand *,const MagickFunction,const size_t,
164 MagickFunctionImageChannel(MagickWand *,const ChannelType,
165 const MagickFunction,const size_t,const double *),
166 MagickGammaImage(MagickWand *,const double),
167 MagickGammaImageChannel(MagickWand *,const ChannelType,const double),
168 MagickGaussianBlurImage(MagickWand *,const double,const double),
169 MagickGaussianBlurImageChannel(MagickWand *,const ChannelType,const double,
171 MagickGetImageAlphaChannel(MagickWand *),
172 MagickGetImageBackgroundColor(MagickWand *,PixelWand *),
173 MagickGetImageBluePrimary(MagickWand *,double *,double *),
174 MagickGetImageBorderColor(MagickWand *,PixelWand *),
175 MagickGetImageChannelDistortion(MagickWand *,const MagickWand *,
176 const ChannelType,const MetricType,double *),
177 MagickGetImageChannelKurtosis(MagickWand *,const ChannelType,double *,
179 MagickGetImageChannelMean(MagickWand *,const ChannelType,double *,double *),
180 MagickGetImageChannelRange(MagickWand *,const ChannelType,double *,double *),
181 MagickGetImageColormapColor(MagickWand *,const size_t,PixelWand *),
182 MagickGetImageDistortion(MagickWand *,const MagickWand *,const MetricType,
184 MagickGetImageGreenPrimary(MagickWand *,double *,double *),
185 MagickGetImageMatteColor(MagickWand *,PixelWand *),
186 MagickGetImageLength(MagickWand *,MagickSizeType *),
187 MagickGetImagePage(MagickWand *,size_t *,size_t *,ssize_t *,
189 MagickGetImagePixelColor(MagickWand *,const ssize_t,const ssize_t,
191 MagickGetImageRange(MagickWand *,double *,double *),
192 MagickGetImageRedPrimary(MagickWand *,double *,double *),
193 MagickGetImageResolution(MagickWand *,double *,double *),
194 MagickGetImageWhitePoint(MagickWand *,double *,double *),
195 MagickHaldClutImage(MagickWand *,const MagickWand *),
196 MagickHaldClutImageChannel(MagickWand *,const ChannelType,const MagickWand *),
197 MagickHasNextImage(MagickWand *),
198 MagickHasPreviousImage(MagickWand *),
199 MagickImplodeImage(MagickWand *,const double),
200 MagickImportImagePixels(MagickWand *,const ssize_t,const ssize_t,const size_t,
201 const size_t,const char *,const StorageType,const void *),
202 MagickInverseFourierTransformImage(MagickWand *,MagickWand *,
203 const MagickBooleanType),
204 MagickLabelImage(MagickWand *,const char *),
205 MagickLevelImage(MagickWand *,const double,const double,const double),
206 MagickLevelImageChannel(MagickWand *,const ChannelType,const double,
207 const double,const double),
208 MagickLinearStretchImage(MagickWand *,const double,const double),
209 MagickLiquidRescaleImage(MagickWand *,const size_t,const size_t,const double,
211 MagickMagnifyImage(MagickWand *),
212 MagickMedianFilterImage(MagickWand *,const double),
213 MagickMinifyImage(MagickWand *),
214 MagickModulateImage(MagickWand *,const double,const double,const double),
215 MagickMorphologyImage(MagickWand *,MorphologyMethod,const ssize_t,
217 MagickMorphologyImageChannel(MagickWand *,const ChannelType,MorphologyMethod,
218 const ssize_t,KernelInfo *),
219 MagickMotionBlurImage(MagickWand *,const double,const double,const double),
220 MagickMotionBlurImageChannel(MagickWand *,const ChannelType,const double,
221 const double,const double),
222 MagickNegateImage(MagickWand *,const MagickBooleanType),
223 MagickNegateImageChannel(MagickWand *,const ChannelType,
224 const MagickBooleanType),
225 MagickNewImage(MagickWand *,const size_t,const size_t,const PixelWand *),
226 MagickNextImage(MagickWand *),
227 MagickNormalizeImage(MagickWand *),
228 MagickNormalizeImageChannel(MagickWand *,const ChannelType),
229 MagickOilPaintImage(MagickWand *,const double),
230 MagickOpaquePaintImage(MagickWand *,const PixelWand *,const PixelWand *,
231 const double,const MagickBooleanType),
232 MagickOpaquePaintImageChannel(MagickWand *,const ChannelType,
233 const PixelWand *,const PixelWand *,const double,const MagickBooleanType),
234 MagickOrderedPosterizeImage(MagickWand *,const char *),
235 MagickOrderedPosterizeImageChannel(MagickWand *,const ChannelType,
237 MagickTransparentPaintImage(MagickWand *,const PixelWand *,
238 const double,const double,const MagickBooleanType invert),
239 MagickPingImage(MagickWand *,const char *),
240 MagickPingImageBlob(MagickWand *,const void *,const size_t),
241 MagickPingImageFile(MagickWand *,FILE *),
242 MagickPolaroidImage(MagickWand *,const DrawingWand *,const double),
243 MagickPosterizeImage(MagickWand *,const size_t,const MagickBooleanType),
244 MagickPreviousImage(MagickWand *),
245 MagickQuantizeImage(MagickWand *,const size_t,const ColorspaceType,
246 const size_t,const MagickBooleanType,const MagickBooleanType),
247 MagickQuantizeImages(MagickWand *,const size_t,const ColorspaceType,
248 const size_t,const MagickBooleanType,const MagickBooleanType),
249 MagickRadialBlurImage(MagickWand *,const double),
250 MagickRadialBlurImageChannel(MagickWand *,const ChannelType,const double),
251 MagickRaiseImage(MagickWand *,const size_t,const size_t,const ssize_t,
252 const ssize_t,const MagickBooleanType),
253 MagickRandomThresholdImage(MagickWand *,const double,const double),
254 MagickRandomThresholdImageChannel(MagickWand *,const ChannelType,const double,
256 MagickReadImage(MagickWand *,const char *),
257 MagickReadImageBlob(MagickWand *,const void *,const size_t),
258 MagickReadImageFile(MagickWand *,FILE *),
259 MagickReduceNoiseImage(MagickWand *,const double),
260 MagickRemapImage(MagickWand *,const MagickWand *,const DitherMethod),
261 MagickRemoveImage(MagickWand *),
262 MagickResampleImage(MagickWand *,const double,const double,const FilterTypes,
264 MagickResetImagePage(MagickWand *,const char *),
265 MagickResizeImage(MagickWand *,const size_t,const size_t,const FilterTypes,
267 MagickRollImage(MagickWand *,const ssize_t,const ssize_t),
268 MagickRotateImage(MagickWand *,const PixelWand *,const double),
269 MagickSampleImage(MagickWand *,const size_t,const size_t),
270 MagickScaleImage(MagickWand *,const size_t,const size_t),
271 MagickSegmentImage(MagickWand *,const ColorspaceType,const MagickBooleanType,
272 const double,const double),
273 MagickSelectiveBlurImage(MagickWand *,const double,const double,const double),
274 MagickSelectiveBlurImageChannel(MagickWand *,const ChannelType,const double,
275 const double,const double),
276 MagickSeparateImageChannel(MagickWand *,const ChannelType),
277 MagickSepiaToneImage(MagickWand *,const double),
278 MagickSetImage(MagickWand *,const MagickWand *),
279 MagickSetImageAlphaChannel(MagickWand *,const AlphaChannelType),
280 MagickSetImageBackgroundColor(MagickWand *,const PixelWand *),
281 MagickSetImageBias(MagickWand *,const double),
282 MagickSetImageBluePrimary(MagickWand *,const double,const double),
283 MagickSetImageBorderColor(MagickWand *,const PixelWand *),
284 MagickSetImageChannelDepth(MagickWand *,const ChannelType,const size_t),
285 MagickSetImageClipMask(MagickWand *,const MagickWand *),
286 MagickSetImageColor(MagickWand *,const PixelWand *),
287 MagickSetImageColormapColor(MagickWand *,const size_t,
289 MagickSetImageColorspace(MagickWand *,const ColorspaceType),
290 MagickSetImageCompose(MagickWand *,const CompositeOperator),
291 MagickSetImageCompression(MagickWand *,const CompressionType),
292 MagickSetImageDelay(MagickWand *,const size_t),
293 MagickSetImageDepth(MagickWand *,const size_t),
294 MagickSetImageDispose(MagickWand *,const DisposeType),
295 MagickSetImageCompressionQuality(MagickWand *,const size_t),
296 MagickSetImageExtent(MagickWand *,const size_t,const size_t),
297 MagickSetImageFilename(MagickWand *,const char *),
298 MagickSetImageFormat(MagickWand *,const char *),
299 MagickSetImageFuzz(MagickWand *,const double),
300 MagickSetImageGamma(MagickWand *,const double),
301 MagickSetImageGravity(MagickWand *,const GravityType),
302 MagickSetImageGreenPrimary(MagickWand *,const double,const double),
303 MagickSetImageInterlaceScheme(MagickWand *,const InterlaceType),
304 MagickSetImageInterpolateMethod(MagickWand *,const InterpolatePixelMethod),
305 MagickSetImageIterations(MagickWand *,const size_t),
306 MagickSetImageMatte(MagickWand *,const MagickBooleanType),
307 MagickSetImageMatteColor(MagickWand *,const PixelWand *),
308 MagickSetImageOpacity(MagickWand *,const double),
309 MagickSetImageOrientation(MagickWand *,const OrientationType),
310 MagickSetImagePage(MagickWand *,const size_t,const size_t,const ssize_t,
312 MagickSetImageRedPrimary(MagickWand *,const double,const double),
313 MagickSetImageRenderingIntent(MagickWand *,const RenderingIntent),
314 MagickSetImageResolution(MagickWand *,const double,const double),
315 MagickSetImageScene(MagickWand *,const size_t),
316 MagickSetImageTicksPerSecond(MagickWand *,const ssize_t),
317 MagickSetImageType(MagickWand *,const ImageType),
318 MagickSetImageUnits(MagickWand *,const ResolutionType),
319 MagickSetImageWhitePoint(MagickWand *,const double,const double),
320 MagickShadeImage(MagickWand *,const MagickBooleanType,const double,
322 MagickShadowImage(MagickWand *,const double,const double,const ssize_t,
324 MagickSharpenImage(MagickWand *,const double,const double),
325 MagickSharpenImageChannel(MagickWand *,const ChannelType,const double,
327 MagickShaveImage(MagickWand *,const size_t,const size_t),
328 MagickShearImage(MagickWand *,const PixelWand *,const double,const double),
329 MagickSigmoidalContrastImage(MagickWand *,const MagickBooleanType,
330 const double,const double),
331 MagickSigmoidalContrastImageChannel(MagickWand *,const ChannelType,
332 const MagickBooleanType,const double,const double),
333 MagickSketchImage(MagickWand *,const double,const double,const double),
334 MagickSolarizeImage(MagickWand *,const double),
335 MagickSparseColorImage(MagickWand *,const ChannelType,const SparseColorMethod,
336 const size_t,const double *),
337 MagickSpliceImage(MagickWand *,const size_t,const size_t,const ssize_t,
339 MagickSpreadImage(MagickWand *,const double),
340 MagickStripImage(MagickWand *),
341 MagickSwirlImage(MagickWand *,const double),
342 MagickTintImage(MagickWand *,const PixelWand *,const PixelWand *),
343 MagickTransformImageColorspace(MagickWand *,const ColorspaceType),
344 MagickTransposeImage(MagickWand *),
345 MagickTransverseImage(MagickWand *),
346 MagickThresholdImage(MagickWand *,const double),
347 MagickThresholdImageChannel(MagickWand *,const ChannelType,const double),
348 MagickThumbnailImage(MagickWand *,const size_t,const size_t),
349 MagickTrimImage(MagickWand *,const double),
350 MagickUniqueImageColors(MagickWand *),
351 MagickUnsharpMaskImage(MagickWand *,const double,const double,const double,
353 MagickUnsharpMaskImageChannel(MagickWand *,const ChannelType,const double,
354 const double,const double,const double),
355 MagickVignetteImage(MagickWand *,const double,const double,const ssize_t,
357 MagickWaveImage(MagickWand *,const double,const double),
358 MagickWhiteThresholdImage(MagickWand *,const PixelWand *),
359 MagickWriteImage(MagickWand *,const char *),
360 MagickWriteImageFile(MagickWand *,FILE *),
361 MagickWriteImages(MagickWand *,const char *,const MagickBooleanType),
362 MagickWriteImagesFile(MagickWand *,FILE *);
364 WandExport MagickProgressMonitor
365 MagickSetImageProgressMonitor(MagickWand *,const MagickProgressMonitor,
368 extern WandExport MagickWand
369 *MagickAppendImages(MagickWand *,const MagickBooleanType),
370 *MagickCoalesceImages(MagickWand *),
371 *MagickCombineImages(MagickWand *,const ChannelType),
372 *MagickCompareImageChannels(MagickWand *,const MagickWand *,const ChannelType,
373 const MetricType,double *),
374 *MagickCompareImages(MagickWand *,const MagickWand *,const MetricType,
376 *MagickCompareImageLayers(MagickWand *,const ImageLayerMethod),
377 *MagickDeconstructImages(MagickWand *),
378 *MagickEvaluateImages(MagickWand *,const MagickEvaluateOperator),
379 *MagickFxImage(MagickWand *,const char *),
380 *MagickFxImageChannel(MagickWand *,const ChannelType,const char *),
381 *MagickGetImage(MagickWand *),
382 *MagickGetImageClipMask(MagickWand *),
383 *MagickGetImageRegion(MagickWand *,const size_t,const size_t,const ssize_t,
385 *MagickMergeImageLayers(MagickWand *,const ImageLayerMethod),
386 *MagickMorphImages(MagickWand *,const size_t),
387 *MagickMontageImage(MagickWand *,const DrawingWand *,const char *,
388 const char *,const MontageMode,const char *),
389 *MagickOptimizeImageLayers(MagickWand *),
390 *MagickPreviewImages(MagickWand *wand,const PreviewType),
391 *MagickSimilarityImage(MagickWand *,const MagickWand *,RectangleInfo *,
393 *MagickSteganoImage(MagickWand *,const MagickWand *,const ssize_t),
394 *MagickStereoImage(MagickWand *,const MagickWand *),
395 *MagickTextureImage(MagickWand *,const MagickWand *),
396 *MagickTransformImage(MagickWand *,const char *,const char *);
398 extern WandExport OrientationType
399 MagickGetImageOrientation(MagickWand *);
401 extern WandExport PixelWand
402 **MagickGetImageHistogram(MagickWand *,size_t *);
404 extern WandExport RenderingIntent
405 MagickGetImageRenderingIntent(MagickWand *);
407 extern WandExport ResolutionType
408 MagickGetImageUnits(MagickWand *);
410 extern WandExport size_t
411 MagickGetImageColors(MagickWand *),
412 MagickGetImageCompressionQuality(MagickWand *),
413 MagickGetImageDelay(MagickWand *),
414 MagickGetImageChannelDepth(MagickWand *,const ChannelType),
415 MagickGetImageDepth(MagickWand *),
416 MagickGetImageHeight(MagickWand *),
417 MagickGetImageIterations(MagickWand *),
418 MagickGetImageScene(MagickWand *),
419 MagickGetImageTicksPerSecond(MagickWand *),
420 MagickGetImageWidth(MagickWand *),
421 MagickGetNumberImages(MagickWand *);
423 extern WandExport unsigned char
424 *MagickGetImageBlob(MagickWand *,size_t *),
425 *MagickGetImagesBlob(MagickWand *,size_t *);
427 extern WandExport VirtualPixelMethod
428 MagickGetImageVirtualPixelMethod(MagickWand *),
429 MagickSetImageVirtualPixelMethod(MagickWand *,const VirtualPixelMethod);
431 #if defined(__cplusplus) || defined(c_plusplus)