Skip to content

Latest commit

 

History

History
741 lines (578 loc) · 28.5 KB

changes.rst

File metadata and controls

741 lines (578 loc) · 28.5 KB

Wand Changelog

0.5 series

Version 0.5.0

To be released.

  • Support for ImageMagick-7.
  • Improved support for 32-bit systems.
  • Improved support for non-Q16 libraries.
  • Removed README.rst from setup.py's data_files. [336]
  • Improved EXIF:ORIENTATION handling. [364 by M. Skrzypek]
  • Tolerate failures while accessing wand.api. [220 by Utkarsh Upadhyay]
  • Added support for Image Artifacts through Image.artifacts <wand.image.Image.artifacts>. [369]
  • Added optional stroke color/width parameters for Font <wand.font.Font>.
  • Image layers support (22)
    • Added Image.optimize_layers() <wand.image.BaseImage.optimize_layers> method (:cMagickOptmizeImageLayers()).
    • Added Image.optimize_transparency() <wand.image.BaseImage.optimize_transparency> method (:cMagickOptmizeImageTransparency()).
    • Added Image.dispose <wand.image.BaseImage.dispose> property.
    • Added Image.coalesce() <wand.image.BaseImage.coalesce> method.
  • Added Image.append() <wand.image.BaseImage.append> method. [177]
  • Implemented __array_interface__ for NumPy [65]
  • Migrated the following methods & attributes from Image <wand.image.Image> to BaseImage <wand.image.BaseImage> for a more uniformed code-base.

    • Image.compression <wand.image.BaseImage.compression>
    • Image.format <wand.image.BaseImage.format>
    • Image.auto_orient() <wand.image.BaseImage.auto_orient>
    • Image.border() <wand.image.BaseImage.border>
    • Image.contrast_stretch() <wand.image.BaseImage.contrast_stretch>
    • Image.gamma() <wand.image.BaseImage.gamma>
    • Image.level() <wand.image.BaseImage.level>
    • Image.linear_stretch() <wand.image.BaseImage.linear_stretch>
    • Image.normalize() <wand.image.BaseImage.normalize>
    • Image.strip() <wand.image.BaseImage.strip>
    • Image.transpose() <wand.image.BaseImage.transpose>
    • Image.transverse() <wand.image.BaseImage.transverse>
    • Image.trim() <wand.image.BaseImage.trim>

0.4 series

Version 0.4.5

Released on November 12, 2018.

  • Improve library searching when MAGICK_HOME environment variable is set. [320 by Chase Anderson]
  • Fixed misleading TypeError: object of type 'NoneType' has no len() during destroy routines. [346 by Carey Metcalfe]
  • Added Image.blur() <wand.image.BaseImage.blur> method (:cMagickBlurImage()). [311 by Alexander Karpinsky]
  • Added Image.extent() <wand.image.BaseImage.extent> method (:cMagickExtentImage()). [233 by Jae-Myoung Yu]
  • Added Image.resample() <wand.image.BaseImage.resample> method (:cMagickResampleImage()). [244 by Zio Tibia]

Version 0.4.4

Released on October 22, 2016.

  • Added ~wand.exceptions.BaseError, ~wand.exceptions.BaseWarning, and ~wand.exceptions.BaseFatalError, base classes for domains. [292]
  • Fixed TypeError during parsing version caused by format change of ImageMagick version string (introduced by 6.9.6.2). [310, Debian bug report #841548]
  • Properly fixed again memory-leak when accessing images constructed in Image.sequence[] <wand.sequence.Sequence>. It had still leaked memory in the case an image is not closed using with but manual wand.resource.Resource.destroy()/wand.image.Image.close() method call. [237]

Version 0.4.3

Released on June 1, 2016.

  • Fixed repr() for empty ~.wand.image.Image objects. [265]
  • Added Image.compare() <wand.image.BaseImage.compare> method (:cMagickCompareImages()). [238, 268 by Gyusun Yeom]
  • Added Image.page <wand.image.BaseImage.page> and related properties for virtual canvas handling. [284 by Dan Harrison]
  • Added Image.merge_layers() <wand.image.BaseImage.merge_layers> method (:cMagickMergeImageLayers()). [281 by Dan Harrison]
  • Fixed OSError during import libc.dylib due to El Capitan's SIP protection. [275 by Ramesh Dharan]

Version 0.4.2

Released on November 30, 2015.

  • Fixed ImportError on MSYS2. [257 by Eon Jeong]
  • Added Image.quantize() <wand.image.BaseImage.quantize> method (:cMagickQuantizeImage()). [152 by Kang Hyojun, 262 by Jeong YunWon]
  • Added Image.transform_colorspace() <wand.image.BaseImage.transform_colorspace> quantize (:cMagickTransformImageColorspace()). [152 by Adrian Jung, 262 by Jeong YunWon]
  • Now ImageMagick DLL can be loaded on Windows even if its location is stored in the resitry. [261 by Roeland Schoukens]
  • Added depth parameter to ~.wand.image.Image constructor. The depth, width and height parameters can be used with the filename, file and blob parameters to load raw pixel data. [261 by Roeland Schoukens]

Version 0.4.1

Released on August 3, 2015.

  • Added Image.auto_orient() <wand.image.BaseImage.auto_orient> that fixes orientation by checking EXIF tags.
  • Added Image.transverse() <wand.image.BaseImage.transverse> method (:cMagickTransverseImage()).
  • Added Image.transpose() <wand.image.BaseImage.transpose> method (:cMagickTransposeImage()).
  • Added Image.evaluate() <wand.image.BaseImage.evaluate> method.
  • Added Image.frame() <wand.image.BaseImage.frame> method.
  • Added Image.function() <wand.image.BaseImage.function> method.
  • Added Image.fx() <wand.image.BaseImage.fx> expression method.
  • Added gravity options in Image.crop() <wand.image.BaseImage.crop> method. [222 by Eric McConville]
  • Added Image.matte_color <wand.image.BaseImage.matte_color> property.
  • Added Image.virtual_pixel <wand.image.BaseImage.virtual_pixel> property.
  • Added Image.distort() <wand.image.BaseImage.distort> method.
  • Added Image.contrast_stretch() <wand.image.BaseImage.contrast_stretch> method.
  • Added Image.gamma() <wand.image.BaseImage.gamma> method.
  • Added Image.linear_stretch() <wand.image.BaseImage.linear_stretch> method.
  • Additional support for Image.alpha_channel <wand.image.BaseImage.alpha_channel>.
  • Additional query functions have been added to wand.version API. [120]
    • Added configure_options() <wand.version.configure_options> function.
    • Added fonts() <wand.version.fonts> function.
    • Added formats() <wand.version.formats> function.
  • Additional IPython support. [117]
    • Render RGB Color <wand.color.Color> preview.
    • Display each frame in image Sequence <wand.sequence.Sequence>.
  • Fixed memory-leak when accessing images constructed in Image.sequence[] <wand.sequence.Sequence>. [237 by Eric McConville]
  • Fixed Windows memory-deallocate errors on wand.drawing API. [226 by Eric McConville]
  • Fixed ImportError on FreeBSD. [252 by Pellaeon Lin]

Version 0.4.0

Released on February 20, 2015.

whatsnew/0.4

This guide introduces what's new in Wand 0.4.

  • Complete wand.drawing API. The whole work was done by Eric McConville. Huge thanks for his effort! [194 by Eric McConville]
    • Added Drawing.arc() <wand.drawing.Drawing.arc> method (draw-arc).
    • Added Drawing.bezier() <wand.drawing.Drawing.bezier> method (draw-bezier).
    • Added Drawing.circle() <wand.drawing.Drawing.circle> method (draw-circle).
    • draw-color-and-matte
      • Added wand.drawing.PAINT_METHOD_TYPES constant.
      • Added Drawing.color() <wand.drawing.Drawing.color> method.
      • Added Drawing matte() <wand.drawing.Drawing.matte> method.
    • Added Drawing.composite() <wand.drawing.Drawing.composite> method (draw-composite).
    • Added Drawing.ellipse() <wand.drawing.Drawing.ellipse> method (draw-ellipse).
    • draw-paths
      • Added ~wand.drawing.Drawing.path_start() method.
      • Added ~wand.drawing.Drawing.path_finish() method.
      • Added ~wand.drawing.Drawing.path_close() method.
      • Added ~wand.drawing.Drawing.path_curve() method.
      • Added ~wand.drawing.Drawing.path_curve_to_quadratic_bezier() method.
      • Added ~wand.drawing.Drawing.path_elliptic_arc() method.
      • Added ~wand.drawing.Drawing.path_horizontal_line() method.
      • Added ~wand.drawing.Drawing.path_line() method.
      • Added ~wand.drawing.Drawing.path_move() method.
      • Added ~wand.drawing.Drawing.path_vertical_line() method.
    • Added Drawing.point() <wand.drawing.Drawing.point> method (draw-point).
    • Added Drawing.polygon() <wand.drawing.Drawing.polygon> method (draw-polygon).
    • Added Drawing.polyline() <wand.drawing.Drawing.polyline> method (draw-polyline).
    • draw-push-pop
      • Added ~wand.drawing.Drawing.push() method.
      • Added ~wand.drawing.Drawing.push_clip_path() method.
      • Added ~wand.drawing.Drawing.push_defs() method.
      • Added ~wand.drawing.Drawing.push_pattern() method.
      • Added ~wand.drawing.Drawing.clip_path property.
      • Added ~wand.drawing.Drawing.set_fill_pattern_url() method.
      • Added ~wand.drawing.Drawing.set_stroke_pattern_url() method.
      • Added ~wand.drawing.Drawing.pop() method.
    • Added Drawing.rectangle() <wand.drawing.Drawing.rectangle> method (draw-rectangles).
    • Added ~wand.drawing.Drawing.stroke_dash_array property.
    • Added ~wand.drawing.Drawing.stroke_dash_offset property.
    • Added ~wand.drawing.Drawing.stroke_line_cap property.
    • Added ~wand.drawing.Drawing.stroke_line_join property.
    • Added ~wand.drawing.Drawing.stroke_miter_limit property.
    • Added ~wand.drawing.Drawing.stroke_opacity property.
    • Added ~wand.drawing.Drawing.stroke_width property.
    • Added ~wand.drawing.Drawing.fill_opacity property.
    • Added ~wand.drawing.Drawing.fill_rule property.
  • Error message of ~wand.exceptions.MissingDelegateError raised by Image.liquid_rescale() <wand.image.BaseImage.liquid_rescale> became nicer.

0.3 series

Version 0.3.9

Released on December 20, 2014.

  • Added 'pdf:use-cropbox' option to Image.options <wand.image.BaseImage.options> dictionary (and ~wand.image.OPTIONS constant). [185 by Christoph Neuroth]
  • Fixed a bug that exception message was bytes instead of str on Python 3.
  • The size parameter of ~wand.font.Font class becomes optional. Its default value is 0, which means autosized. [191 by Cha, Hojeong]
  • Fixed a bug that Image.read() <wand.image.Image.read> had tried using :cMagickReadImageFile() even when the given file object has no mode attribute. [205 by Stephen J. Fuhry]

Version 0.3.8

Released on August 3, 2014.

  • Fixed a bug that transparent background becomes filled with white when SVG is converted to other bitmap image format like PNG. [184]
  • Added Image.negate() <wand.image.BaseImage.negate> method. [174 by Park Joon-Kyu]
  • Fixed a segmentation fault on Image.modulate() <wand.image.BaseImage.modulate> method. [173 by Ted Fung, 158]
  • Added suggestion to install freetype also if Homebrew is used. [141]
  • Now image/x-gif also is determined as animation. [181 by Juan-Pablo Scaletti]

Version 0.3.7

Released on March 25, 2014.

  • A hotfix of debug prints made at 0.3.6.

Version 0.3.6

Released on March 23, 2014.

  • Added Drawing.rectangle() <wand.drawing.Drawing.rectangle> method. Now you can draw rectangles. <draw-rectangles> [159]
  • Added Image.compression <wand.image.BaseImage.compression> property. [171]
  • Added contextlib.nested() function to wand.compat module.
  • Fixed UnicodeEncodeError when Drawing.text() <wand.drawing.Drawing.text> method gives Unicode text argument in Python 2. [163]
  • Now it now allows to use Wand when Python is invoked with the -OO flag. [169 by Samuel Maudo]

Version 0.3.5

Released on September 13, 2013.

  • Fix segmentation fault on Image.save() <wand.image.Image.save> method. [150]

Version 0.3.4

Released on September 9, 2013.

  • Added Image.modulate() <wand.image.BaseImage.modulate> method. [134 by Dan P. Smith]
  • Added Image.colorspace <wand.image.BaseImage.colorspace> property. [135 by Volodymyr Kuznetsov]
  • Added Image.unsharp_mask() <wand.image.BaseImage.unsharp_mask> method. [136 by Volodymyr Kuznetsov]
  • Added 'jpeg:sampling-factor' option to Image.options <wand.image.BaseImage.options> dictionary (and ~wand.image.OPTIONS constant). [137 by Volodymyr Kuznetsov]
  • Fixed ImageMagick shared library resolution on Arch Linux. [139, 140 by Sergey Tereschenko]
  • Added Image.sample() <wand.image.BaseImage.sample> method. [142 by Michael Allen]
  • Fixed a bug that Image.save() <wand.image.Image.save> preserves only one frame of the given animation when file-like object is passed. [143, 145 by Michael Allen]
  • Fixed searching of ImageMagick shared library with HDR support enabled. [148, 149 by Lipin Dmitriy]

Version 0.3.3

Released on August 4, 2013. It's author's birthday.

  • Added Image.gaussian_blur() <wand.image.BaseImage.gaussian_blur> method.
  • Added Drawing.stroke_color <wand.drawing.Drawing.stroke_color> property. [129 by Zeray Rice]
  • Added Drawing.stroke_width <wand.drawing.Drawing.stroke_width> property. [130 by Zeray Rice]
  • Fixed a memory leak of ~wand.color.Color class. [127 by Wieland Morgenstern]
  • Fixed a bug that Image.save() <wand.image.Image.save> to stream truncates data. [128 by Michael Allen]
  • Fixed broken ~wand.display.display() on Python 3. [126]

Version 0.3.2

Released on July 11, 2013.

  • Fixed incorrect encoding of filenames. [122]
  • Fixed key type of Image.metadata <wand.image.Image.metadata> dictionary to str from bytes in Python 3.
  • Fixed CentOS compatibility [116, 124 by Pierre Vanliefland]
    • Made :cDrawSetTextInterlineSpacing() and :cDrawGetTextInterlineSpacing() optional.
    • Added exception in drawing API when trying to use :cDrawSetTextInterlineSpacing() and :cDrawGetTextInterlineSpacing() functions when they are not available.
    • Added ~wand.exceptions.WandLibraryVersionError class for library versions issues.

Version 0.3.1

Released on June 23, 2013.

  • Fixed ~exceptions.ImportError on Windows.

Version 0.3.0

Released on June 17, 2013.

whatsnew/0.3

This guide introduces what's new in Wand 0.3.

  • Now also works on Python 2.6, 2.7, and 3.2 or higher.
  • Added wand.drawing module. [64 by Adrian Jung]
  • Added Drawing.get_font_metrics() <wand.drawing.Drawing.get_font_metrics> method. [69, 71 by Cha, Hojeong]
  • Added Image.caption() <wand.image.BaseImage.caption> method. [74 by Cha, Hojeong]
  • Added optional color parameter to Image.trim() <wand.image.BaseImage.trim> method.
  • Added Image.border() <wand.image.BaseImage.border> method. [2496d37f75d75e9425f95dde07033217dc8afefc by Jae-Myoung Yu]
  • Added resolution parameter to Image.read() <wand.image.Image.read> method and the constructor of ~wand.image.Image. [75 by Andrey Antukh]
  • Added Image.liquid_rescale() <wand.image.BaseImage.liquid_rescale> method which does seam carving. See also seam-carving.
  • Added Image.metadata <wand.image.Image.metadata> immutable mapping attribute and ~wand.image.Metadata mapping type for it. [56 by Michael Elovskikh]
  • Added Image.channel_images <wand.image.Image.channel_images> immutable mapping attribute and ~wand.image.ChannelImageDict mapping for it.
  • Added Image.channel_depths <wand.image.Image.channel_depths> immutable mapping attribute and ~wand.image.ChannelDepthDict mapping for it.
  • Added Image.composite_channel() <wand.image.BaseImage.composite_channel> method.
  • Added Image.read() <wand.image.Image.read> method. [58 by Piotr Florczyk]
  • Added Image.resolution <wand.image.BaseImage.resolution> property. [58 by Piotr Florczyk]
  • Added Image.blank() <wand.image.Image.blank> method. [60 by Piotr Florczyk]
  • Fixed several memory leaks. [62 by Mitch Lindgren]
  • Added ~wand.image.ImageProperty mixin class to maintain a weak reference to the parent image.
  • Ranamed wand.image.COMPOSITE_OPS to ~wand.image.COMPOSITE_OPERATORS.
  • Now it shows helpful error message when ImageMagick library cannot be found.
  • Added IPython-specialized formatter.
  • Added ~wand.version.QUANTUM_DEPTH constant.
  • Added these properties to ~wand.color.Color class:
    • ~wand.color.Color.red_quantum
    • ~wand.color.Color.green_quantum
    • ~wand.color.Color.blue_quantum
    • ~wand.color.Color.alpha_quantum
    • ~wand.color.Color.red_int8
    • ~wand.color.Color.green_int8
    • ~wand.color.Color.blue_int8
    • ~wand.color.Color.alpha_int8
  • Added Image.normalize() <wand.image.BaseImage.normalize> method. [95 by Michael Curry]
  • Added Image.transparent_color() <wand.image.BaseImage.transparent_color> method. [98 by Lionel Koenig]
  • Started supporting resizing and cropping of GIF images. [88 by Bear Dong, 112 by Taeho Kim]
  • Added Image.flip() <wand.image.BaseImage.flip> method.
  • Added Image.flop() <wand.image.BaseImage.flop> method.
  • Added Image.orientation <wand.image.BaseImage.orientation> property. [88574468a38015669dae903185fb328abdd717c0 by Taeho Kim]
  • wand.resource.DestroyedResourceError becomes a subtype of wand.exceptions.WandException.
  • ~wand.color.Color is now hashable, so can be used as a key of dictionaries, or an element of sets. [114 by klutzy]
  • ~wand.color.Color has ~wand.color.Color.normalized_string property.
  • ~wand.image.Image has ~wand.image.BaseImage.histogram dictionary.
  • Added optional fuzz parameter to Image.trim() <wand.image.BaseImage.trim> method. [113 by Evaldo Junior]

0.2 series

Version 0.2.4

Released on May 28, 2013.

  • Fix ~exceptions.NameError in Resource.resource <wand.resource.Resource.resource> setter. [89 forwareded from Debian bug report #699064 by Jakub Wilk]
  • Fix the problem of library loading for Mac with Homebrew and Arch Linux. [102 by Roel Gerrits, 44]

Version 0.2.3

Released on January 25, 2013.

  • Fixed a bug that Image.transparentize() <wand.image.BaseImage.transparentize> method (and Image.watermark() <wand.image.BaseImage.watermark> method which internally uses it) didn't work.
  • Fixed segmentation fault occurred when Color.red <wand.color.Color.red>, Color.green <wand.color.Color.green>, or Color.blue <wand.color.Color.blue> is accessed.
  • Added Color.alpha <wand.color.Color.alpha> property.
  • Fixed a bug that format converting using Image.format <wand.image.BaseImage.format> property or Image.convert() <wand.image.Image.convert> method doesn't correctly work to save blob.

Version 0.2.2

Released on September 24, 2012.

  • A compatibility fix for FreeBSD. [Patch by Olivier Duchateau]
  • Now ~wand.image.Image can be instantiated without any opening. Instead, it can take width/height and background. [53 by Michael Elovskikh]
  • Added Image.transform() <wand.image.BaseImage.transform> method which is a convenience method accepting geometry strings to perform cropping and resizing. [50 by Mitch Lindgren]
  • Added Image.units <wand.image.BaseImage.units> property. [45 by Piotr Florczyk]
  • Now Image.resize() <wand.image.BaseImage.resize> method raises a proper error when it fails for any reason. [41 by Piotr Florczyk]
  • Added Image.type <wand.image.BaseImage.type> property. [33 by Yauhen Yakimovich, 42 by Piotr Florczyk]

Version 0.2.1

Released on August 19, 2012. Beta version.

  • Added Image.trim() <wand.image.BaseImage.trim> method. [26 by Jökull Sólberg Auðunsson]
  • Added Image.depth <wand.image.BaseImage.depth> property. [31 by Piotr Florczyk]
  • Now ~wand.image.Image can take an optional format hint. [32 by Michael Elovskikh]
  • Added Image.alpha_channel <wand.image.BaseImage.alpha_channel> property. [35 by Piotr Florczyk]
  • The default value of Image.resize() <wand.image.BaseImage.resize>'s filter option has changed from 'triangle' to 'undefined'. [37 by Piotr Florczyk]
  • Added version data of the linked ImageMagick library into wand.version module:
    • ~wand.version.MAGICK_VERSION (:cGetMagickVersion)
    • ~wand.version.MAGICK_VERSION_INFO (:cGetMagickVersion)
    • ~wand.version.MAGICK_VERSION_NUMBER (:cGetMagickVersion)
    • ~wand.version.MAGICK_RELEASE_DATE (:cGetMagickReleaseDate)
    • ~wand.version.MAGICK_RELEASE_DATE_STRING (:cGetMagickReleaseDate)

Version 0.2.0

Released on June 20, 2012. Alpha version.

  • Added Image.transparentize() <wand.image.BaseImage.transparentize> method. [19 by Jeremy Axmacher]
  • Added Image.composite() <wand.image.BaseImage.composite> method. [19 by Jeremy Axmacher]
  • Added Image.watermark() <wand.image.BaseImage.watermark> method. [19 by Jeremy Axmacher]
  • Added Image.quantum_range <wand.image.BaseImage.quantum_range> property. [19 by Jeremy Axmacher]
  • Added Image.reset_coords() <wand.image.BaseImage.reset_coords> method and reset_coords option to Image.rotate() <wand.image.BaseImage.rotate> method. [20 by Juan Pablo Scaletti]
  • Added Image.strip() <wand.image.BaseImage.strip> method. [23 by Dmitry Vukolov]
  • Added Image.compression_quality <wand.image.BaseImage.compression_quality> property. [23 by Dmitry Vukolov]
  • Now the current version can be found from the command line interface: python -m wand.version.

0.1 series

Version 0.1.10

Released on May 8, 2012. Still alpha version.

  • So many Windows compatibility issues are fixed. [14 by John Simon]
  • Added wand.api.libmagick.
  • Fixed a bug that raises ~exceptions.AttributeError when it's trying to warn. [16 by Tim Dettrick]
  • Now it throws ~exceptions.ImportError instead of ~exceptions.AttributeError when the shared library fails to load. [17 by Kieran Spear]
  • Fixed the example usage on index page of the documentation. [18 by Jeremy Axmacher]

Version 0.1.9

Released on December 23, 2011. Still alpha version.

  • Now wand.version.VERSION_INFO becomes tuple and wand.version.VERSION becomes a string.
  • Added Image.background_color <wand.image.BaseImage.background_color> property.
  • Added == operator for ~wand.image.Image type.
  • Added hash() support of ~wand.image.Image type.
  • Added Image.signature <wand.image.BaseImage.signature> property.
  • Added wand.display module.
  • Changed the theme of Sphinx documentation.
  • Changed the start example of the documentation.

Version 0.1.8

Released on December 2, 2011. Still alpha version.

  • Wrote some guide documentations: guide/read, guide/write and guide/resizecrop.
  • Added Image.rotate() <wand.image.BaseImage.rotate> method for in-place rotation.
  • Made Image.crop() <wand.image.BaseImage.crop> to raise proper ValueError instead of IndexError for invalid width/height arguments.
  • Changed the type of Image.resize() <wand.image.BaseImage.resize()> method's blur parameter from numbers.Rational to numbers.Real.
  • Fixed a bug of raising ~exceptions.ValueError when invalid filter has passed to Image.resize() <wand.image.BaseImage.resize> method.

Version 0.1.7

Released on November 10, 2011. Still alpha version.

  • Added Image.mimetype <wand.image.Image.mimetype> property.
  • Added Image.crop() <wand.image.BaseImage.crop> method for in-place crop.

Version 0.1.6

Released on October 31, 2011. Still alpha version.

  • Removed a side effect of Image.make_blob() <wand.image.Image.make_blob> method that changes the image format silently.
  • Added Image.format <wand.image.BaseImage.format> property.
  • Added Image.convert() <wand.image.Image.convert> method.
  • Fixed a bug about Python 2.6 compatibility.
  • Use the internal representation of :cPixelWand instead of the string representaion for ~wand.color.Color type.

Version 0.1.5

Released on October 28, 2011. Slightly mature alpha version.

  • Now ~wand.image.Image can read Python file objects by file keyword argument.
  • Now Image.save() <wand.image.Image.save> method can write into Python file objects by file keyword argument.
  • Image.make_blob() <wand.image.Image.make_blob>'s format argument becomes omittable.

Version 0.1.4

Released on October 27, 2011. Hotfix of the malformed Python package.

Version 0.1.3

Released on October 27, 2011. Slightly mature alpha version.

  • Pixel getter for ~wand.image.Image.
  • Row getter for ~wand.image.Image.
  • Mac compatibility.
  • Windows compatibility.
  • 64-bit processor compatibility.

Version 0.1.2

Released on October 16, 2011. Still alpha version.

  • ~wand.image.Image implements iterable interface.
  • Added wand.color module.
  • Added the abstract base class of all Wand resource objects: wand.resource.Resource.
  • ~wand.image.Image implements slicing.
  • Cropping ~wand.image.Image using its slicing operator.

Version 0.1.1

Released on October 4, 2011. Still alpha version.

  • Now it handles errors and warnings properly and in natural way of Python.
  • Added Image.make_blob() <wand.image.Image.make_blob> method.
  • Added blob parameter into ~wand.image.Image constructor.
  • Added Image.resize() <wand.image.BaseImage.resize> method.
  • Added Image.save() <wand.image.Image.save> method.
  • Added Image.clone() <wand.image.BaseImage.clone> method.
  • Drawed the pretty logo picture (thanks to Hyojin Choi).

Version 0.1.0

Released on October 1, 2011. Very alpha version.