blob: ab53dbdb35a9bc9ad6367ae7c83684cfa50e6c88 [file] [log] [blame]
anthonya89dd172011-10-04 13:29:35 +000012011-10-04 7.0.0-0 Anthony <anthony@griffith...>
2 * rename and handling of Wand iteration flags to be more logical
3 * addition of "draw_info" in Wand for use by CLI interface (for now)
4 * also make "quantize_info" in Wand, for CLI interface use only (for now)
5
62011-09-21 7.0.0-0 Anthony <anthony@griffith...>
anthonyf2152b62011-09-26 23:22:34 +00007 * new module "operator.c" which will holds the standard CLI options
8
cristy56375382010-11-21 23:49:30 +000092010-11-21 6.6.6-0 Cristy <quetzlzacatenango@image...>
10 * Add DrawGetFontResolution() / DrawSetFontResolution().
11
cristy6a97fda2009-10-11 20:42:55 +0000122009-10-10 6.5.6-10 Cristy <quetzlzacatenango@image...>
13 * Add MagickSetImageArtifact(), etc. Wand artifacts are like properties
14 except they are not exported. They are needed for some method such
15 as setting compose:args for the composite DisplaceCompositeOp compose
16 operator.
17
cristy3ed852e2009-09-05 21:47:34 +0000182009-08-27 6.5.5-3 Cristy <quetzlzacatenango@image...>
19 * Added MagickSetOpacity/MagickGetOpacity.
20
212009-07-27 6.5.4-7 Cristy <quetzlzacatenango@image...>
22 * Added MagickSetBorderColor/MagickGetBorderColor.
23
242009-04-27 6.5.1-9 Cristy <quetzlzacatenango@image...>
25 * Added MagickSetImageFuzz/MagickGetImageFuzz.
26
272009-03-08 6.4.9-10 Mikko <mkoppanen@php...>
28 * Added DrawGet/SetTextKerning and DrawGet/SetInterWordSpacing.
29
302008-11-27 6.4.6-7 Cristy <quetzlzacatenango@image...>
31 * MagickSetVirtualPixelMethod() now properly sets and returns the
32 virtual pixel method.
33
342008-11-03 6.4.5-4 Cristy <quetzlzacatenango@image...>
35 * Do not filter drawing commands.
36
372008-10-27 6.4.5-1 Cristy <quetzlzacatenango@image...>
38 * Add MagickSparseColorImage() API method.
39
402008-02-23 6.3.9-0 Cristy <quetzlzacatenango@image...>
41 * Patch MagickReadImageBlob() to support Postscript which does not have
42 native blob support.
43
442008-01-28 6.3.8-3 Cristy <quetzlzacatenango@image...>
45 * Return wand->images->depth for MagickGetImageDepth();
46
472008-01-10 6.3.7-10 Cristy <quetzlzacatenango@image...>
48 * Inherit image exception *before* destroying the cloned image (reference
49 http://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=10415).
50
512007-11-27 6.3.7-2 Cristy <quetzlzacatenango@image...>
52 * Fix memory leak in MagickSetImageProfile() (reference
53 https://www.imagemagick.org/discourse-server/viewtopic.php?f=1&t=10197).
54
552007-11-06 6.3.6-10 Cristy <quetzlzacatenango@image...>
56 * New MagickSetImageAlphaChannel() method to activate, deactivate, reset, or
57 set the image alpha channel.
58
592007-10-27 6.3.6-4 Cristy <quetzlzacatenango@image...>
60 * Added get/set font and pointsize methods to magick-property.c (reference
61 http://www.imagemagick.org/discourse-server/viewtopic.php?f=6&t=9997).
62
632007-09-10 6.3.5-9 Cristy <quetzlzacatenango@image...>
64 * Added MagickGetImageProperties(), MagickGetImageOptions(), and
65 MagickGetImageProfiles() methods.
66
672007-07-18 6.3.5-3 Cristy <quetzlzacatenango@image...>
68 * Clone profile before returning from MagickRemoveImageProfile().
69
702007-07-16 6.3.5-2 Cristy <quetzlzacatenango@image...>
71 * Add MagickGetType() method.
72 * Fix MagickAddImage() relative to the iterator offset (reference
73 http://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=9218).
74
752007-05-23 6.3.4-5 Cristy <quetzlzacatenango@image...>
76 * * Add MagickPaintFloodfillImage() method.
77
782007-04-18 6.3.3-9 Kwon <xogusgalaxy@nate....>
79 * Fixed small memory leak in RelinquishWandId().
80
812007-02-24 6.3.3-0 Cristy <quetzlzacatenango@image...>
82 * Add MagickResetImagePage() to reset the image page canvas and position.
83
842007-01-16 6.3.2-0 Cristy <stentz@image...>
85 * Added methods MagickGetAntialias(), MagickSetAntialias(),
86 MagickGetInterpolateMethod(), and MagickSetInterpolateMethod().
87
882007-01-08 6.3.1-7 Cristy <stentz@image...>
89 * MagickOrtderedPosterizeImage() performs an ordered dither based on a number
90 of pre-defined dithering threshold maps, but over multiple intensity levels,
91 which can be different for different channels, according to the input
92 arguments.
93 * Added MagickSetImageClipMask(), MagickGetImageClipMask() methods.
94 * Add MagickSetImageProperty()/MagickGetImageProperty() and deprecate
95 MagickSetImageAttribute()/MagickGetImageAttribute().
96
972006-10-12 6.3.0-1 Cristy <stentz@image...>
98 * MagickSetImageColormapColor() now properly sync the image colormap.
99 * Add MagickGetImageInterpolateMethod() and MagickSetImageInterpolateMethod().
100
1012006-06-26 6.2.8-6 Cristy <stentz@image...>
102 * DrawSetFillRule() no longer emits an improper MVG command.
103
1042006-06-26 6.2.8-0 Cristy <stentz@image...>
105 * Fixed small memory leak in ClearDrawingWand().
106
1072006-05-10 6.2.7-6 Cristy <stentz@image...>
108 * Add MagickSegmentImage() method to API.
109
1102005-12-31 Cristy <stentz@image...>
111 * Opacity value not being returned by PixelGetColorAsString() /
112 PixelGetColorAsNormalizedString() correctly (bug report by O. Watson).
113
1142005-12-28 Cristy <stentz@image...>
115 * DrawSetGravity() actually sets the gravity when ForgetGravity is
116 specified (bug report by O. Watson).
117 * Added MagickSetIteratorIndex() and MagickGetIteratorIndex() and
118 deprecated MagickSetImageIndex() and MagickGetImageIndex().
119
1202005-12-21 Cristy <stentz@image...>
121 * PixelSyncIterator() promotes PseudoClass images to DirectClass (bug
122 report by O. Watson).
123 * Fix PixelGetIteratorRow() to return the correct image row.
124
1252005-12-11 Cristy <stentz@image...>
126 * Add PixelGetIteratorRow() and PixelGetCurrentIteratorRow() methods
127 (suggested by O. Watson).
128 * Add PixelGetColorAsNormalizedString() method (suggested by O. Watson).
129
1302005-11-14 Cristy <stentz@image...>
131 * Add MagickSigmoidalContrastImage() method.
132 * Set the pixel depth in MagickSetPixelColor().
133
1342005-10-28 Cristy <stentz@image...>
135 * Add MagickRandomThresholdImage(), MagickRandomThresholdImageChannel(),
136 and MagickShadeImage() (suggested by O. Watson).
137
1382005-10-18 Cristy <stentz@image...>
139 * PixelGetQuantumColor() automatically converts CMYK pixel wands to RGB.
140 * Add DrawResetVectorGraphics() method to reset the vector graphics but not
141 the drawing attributes.
142
1432005-09-20 Cristy <yarrow@image...>
144 * Do not inherit base opacity when setting fill/stroke color.
145
1462005-09-10 Cristy <yarrow@image...>
147 * Added MagickGetImageTicksPerSecond() and MagickSetImageTicksPerSecond().
148 * Added MagickGetMagickResource().
149 * Added MagickThumbnaiImage().
150
1512005-09-01 Cristy <yarrow@image...>
152 * DrawSetStrokeDashArray() no longer faults for an array of one element
153 (bug report by O. Watson).
154
1552005-08-24 Cristy <yarrow@image...>
156 * Add MagickWandGenesis() and MagickWandTermnus() methods.
157
1582005-08-06 Cristy <yarrow@image...>
159 * Add MagickSetImageExtent() method.
160 * Add MagickSetType() method.
161
1622005-06-15 Cristy <yarrow@image...>
163 * Add MagickClearException() to wand/magick-wand.h.
164
1652005-06-15 Cristy <yarrow@image...>
166 * DrawGetFillOpacity() and DrawSetFillOpacity() were setting alpha values
167 rather than opacity. Note, both of these methods are deprecated.
168 * Added MagickSetImageProgressMonitor() to monitor the progress of a specific
169 image.
170
1712005-06-07 Cristy <yarrow@image...>
172 * Initialize pixel iterator ID in NewPixelRegionIterator (bug report by
173 O. Watson).
174 * Add MagickGetImagePixelColor() method (suggested by O. Watson).
175
1762005-06-01 Cristy <yarrow@image...>
177 * Added methods PixelSetFirstIteratorRow(), PixelSetLastIteratorRow(),
178 and IsPixelWandSimilar().
179
1802005-05-28 Cristy <yarrow@image...>
181 * MagickGetImageTotalInkDensity() returns the total ink density for an image.
182
1832005-05-16 Cristy <yarrow@image...>
184 * Add MagickSetPage() and MagickSetImagePage() methods.
185
1862005-05-10 Cristy <yarrow@image...>
187 * CloneDrawingWand() no longer faults when the supplied drawing wand has not
188 been initialized.
189
1902005-05-08 Cristy <yarrow@image...>
191 * MagickGetImageCompressionQuality() properly returns the image compression
192 quality. Previously it returned the wand compression quality.
193
1942005-04-29 Cristy <yarrow@image...>
195 * PixelSetYellowQuantum() now sets the correct color component.
196 * Add MagickSetBackgroundColor() method to set the wand's background color
197 attribute.
198
1992005-04-14 Cristy <yarrow@image...>
200 * Inherit exception when MagickWriteImageFile() fails.
201
2022005-04-11 Cristy <yarrow@image...>
203 * Added MagickRegionOfInterestImage() to return a region of an image as a
204 new wand.
205
2062005-04-10 Cristy <yarrow@image...>
207 * Throw exception if fdopen() fails in
208 MagickWriteImageFile()/MagickReadImageFile() methods.
209
2102005-03-22 Cristy <yarrow@image...>
211 * Added MagickSigmoidalContrastImage() for sigmoidal non-linearity contrast
212 control.
213
2142005-03-10 Chris Madison <madisonblu@hotma...>
215 * Added the MagickSepiaToneImage() method to simulate a sepia-toned photo.
216
2172004-03-05 Chris Madison <madisonblu@hotma...>
218 * Add MagickGetImageAttribute() method.
219
2202005-02-15 Peter Seiderer <ps.report@gmx.n...>
221 * Avoid an assert by checking the return from GetImageFromMagickWand(0.
222
2232005-01-19 Cristy <yarrow@image...>
224 * Permit NULL for MagickSetFilename() & MagickSetImageFilename().
225
2262005-01-10 Cristy <yarrow@image...>
227 * Permit NULL for MagickSetFormat() & MagickSetImageFormat().
228
2292004-12-15 Cristy <yarrow@image...>
230 * Added ClearMagickWand(), ClearPixelIterator(), ClearPixelWand() and
231 ClearDrawingWand() methods.
232
2332004-12-10 Cristy <yarrow@image...>
234 * Set the vector graphics length in DrawSetVectorGraphics() (bug report from
235 O. Watson).
236
2372004-12-09 Cristy <yarrow@image...>
238 * Classic off-by-one patch for CloneDrawingWand() (bug report from O. Watson).
239
2402004-12-08 Cristy <yarrow@image...>
241 * DrawGetStrokeOpacity() just calls DrawGetStrokeAlpha(); it is supposed to
242 return the stroke color's opacity, not the alpha (problem reports from O.
243 Watson).
244
2452004-12-07 Cristy <yarrow@image...>
246 * Fixed problem reports from O. Watson:
247 1) If the format of an image is not set, the BLOB returned by
248 MagickGetImageBlob() will be empty, but no MagickWand error condition
249 is ever set.
250 2) If the MagickWand's image sequence's format if set (via
251 MagickSetFormat()), but the image formats of individual images are not
252 set, any attempt to retrieve the sequence's image BLOB still fails
253 (i.e. via MagickGetImagesBlob()). If the MagickWand's image format
254 has been set, the API should use that format as the exclusive format
255 for the returned BLOB.
256 3) When the situation in #2 above occurs, no error condition is
257 set. If the problem mentioned in #2 is fixed, an error condition
258 should be set if there is nothing (no format or no filename), from
259 which the API can determine the image format in which it should
260 return the BLOB.
261 4) Even though the MagickWand's image format has been set, when each
262 individual image's format/filename is empty, MagickWriteImagesFile()
263 sets the following error:
264
265 no encode delegate for this image format 'filename.ext.0'
266
267 where "filename.ext" was the name of the file on which the filehandle
268 was opened. The format of the MagickWand (if it is set). should
269 suffice as the desired encoding delegate.
270
2712004-11-18 Cristy <yarrow@image...>
272 * Added MagickNewImage() adds a blank image canvas of the specified size and
273 background color to the wand.
274
2752004-11-15 Cristy <yarrow@image...>
276 * Added MagickGetInterlaceScheme() to correspond to
277 MagickSetInterlaceScheme().
278
2792004-11-06 Cristy <yarrow@image...>
280 * GNS contributed MagickQueryMultilineFontMetrics(). Its like
281 MagickQueryFontMetrics() but returns the maximum text width and height for
282 multiple lines of text.
283
2842004-11-04 Cristy <yarrow@image...>
285 * MagickReadImageBlob() and MagickReadImageFile() calls GetFirstImageInList(),
286 previously GetLastImageInList().
287
2882004-10-28 Cristy <yarrow@image...>
289 * MagickTrimImage() was not properly trimmming the image.
290
2912004-10-27 Cristy <yarrow@image...>
292 * Added DrawSetTextAlignment() and DrawGetTextAlignment() methods (suggested
293 by Daniel Jackson).
294
2952004-10-25 Cristy <yarrow@image...>
296 * Verify the Wand QuantumDepth matches that of the ImageMagick core API.
297 * Added MagickSetAdjoin() and MagickSetImageAdjoin() methods.
298
2992004-10-17 Cristy <yarrow@image...>
300 * Added the MagickGetImagesBlob() method to turn an image sequence into a
301 blob.
302
3032004-10-14 Cristy <yarrow@image...>
304 * Added methods MagickClearException(), DrawClearException(),
305 PixelClearException(), and PixelClearIteratorException().
306
3072004-10-12 Cristy <yarrow@image...>
308 * Add DrawGetVectorGraphics()/DrawSetVectorGraphics()/methods as a way to
309 persist the vector graphics state.
310
3112004-09-30 Cristy <yarrow@image...>
312 * Add new MagickQueryConfigureOption() method to return a valur associated
313 with a particular option.
314
3152004-09-29 Cristy <yarrow@image...>
316 * Return an error if MagickSetImageIndex() requests a bogus image index.
317 * MagickWriteImages(): default to a reasonable filename when no filename is
318 provided.
319
3202004-09-28 Cristy <yarrow@image...>
321 * Add new CloneDrawingWand() method.
322
3232004-09-15 Cristy <yarrow@image...>
324 * If the filename parameter of MagickWriteImage() is NULL, use the existing
325 filename.
326
3272004-09-13 Chris Madison <madisonblu@hotma...>
328 * DestroyMagickWand() was previous void, now it returns (MagickWand *) NULL
329 to force the wand to a known value and to detect logic errors in the program
330 (any reference to the wand after it is destroyed will cause a fault).
331 Other destroy methods will be changed in this manner as well. Note,
332 this change will not affect existing programs that rely on these methods.
333
3342004-09-11 Cristy <yarrow@image...>
335 * Relinquish pixel iterator ID to prevent small memory leak.
336
3372004-09-08 Cristy <yarrow@image...>
338 * Add MagickSetResolution(), required to render Postscript at a density
339 other than the default (e.g. 72dpi).
340
3412004-09-03 Cristy <yarrow@image...>
342 * Add IsMagickWand(), IsDrawingWand(), IsPixelWand(), and IsPixelIterator()
343 methods.
344 * Convert several drawing wand methods from void to MagickBooleanType so
345 they return MagickFalse if an error occurs (e.g. DrawComposite()).
346
3472004-08-28 Cristy <yarrow@image...>
348 * We now export the DrawComposite() drawing wand method as a public method.
349 Previously it was private.