All Versions
Latest Version
Avg Release Cycle
149 days
Latest Release
810 days ago

Changelog History
Page 2

  • v1.0.1 Changes

    September 27, 2018
    • Box now rounds the width/height it receives (previously it discarded the decimal points) (@mlocati)
  • v1.0.0 Changes

    September 25, 2018
    • ๐Ÿ†• New FontInterface method: wrapText - split a text into multiple lines, so that it fits a specific width (@mlocati)
      ๐Ÿ’ฅ BREAKING CHANGE if you have your own FontInterface implementation, it now must implement wrapText
    • Drawer methods can now accept a thickness of zero (@mlocati)
    • ๐Ÿ›  Fix drawing unfilled chords with GD driver (@mlocati)
    • ๐Ÿ›  Fix thickness drawing of unfilled chords with Imagick and Gmagick drivers (@mlocati)
    • ๐Ÿ›  Fix handling of radius in circle method implementations (@mlocati)
    • The dissolve method of ColorInterface normalizes the final value of alpha (@mlocati)
      ๐Ÿ’ฅ BREAKING CHANGE dissolve doesn't throw a Imagine\Exception\InvalidArgumentException anymore
  • v1.0.0-alpha2 Changes

    September 08, 2018

    ๐Ÿ”„ Changes since v1.0.0-alpha1:

    • The coalesce method of LayerInterface instances now returns the LayerInterface itself (@mlocati)
      ๐Ÿ’ฅ BREAKING CHANGE if you have your own LayerInterface implementation, it now must return $this
    • The __toString method has been added to ColorInterface since all its implementations have it (@mlocati)
      ๐Ÿ’ฅ BREAKING CHANGE if you have your own ColorInterface implementation, it now must implement __toString
    • ๐Ÿ†• New Imagick save option: optimize if set, the size of animated GIF files is optimized (@mlocati)
      NOTE Imagick requires that the image frames have the same size
    • The paste method now accepts images not fully included in the destination image (@mlocati)
      ๐Ÿ’ฅ BREAKING CHANGE the paste method doesn't throw an OutOfBoundsException anymore
    • ๐Ÿ›  Fix handling of PNG compression in Imagick save method (@mlocati)
    • ๐Ÿ†• New drawer methods: rectangle and circle (@mlocati)
      ๐Ÿ’ฅ BREAKING CHANGE if you have your own implementation of DrawerInterface you should add these two new methods
    • The getChannelsMaxValue method has been added to PaletteInterface (@mlocati)
      ๐Ÿ’ฅ BREAKING CHANGE if you have your own PaletteInterface implementation, it now must implement this new method
  • v1.0.0-alpha1 Changes

    August 28, 2018

    ๐Ÿ”„ Changes since v0.7.1:

    • ๐Ÿ Imagine is now tested under Windows too (@mlocati)
    • โž• Add support to webp image format (@chregu, @antoligy, @alexander-schranz)
    • โž• Add Imagine\File\LoaderInterface that allows loading remote images with any imaging driver (@mlocati).
      You can use your own LoaderInterface implementation so that you can for instance use curl or any other library.
    • ๐Ÿ›  Fix some phpdoc issues (@mlocati)
    • flipHorizontally and flipVertically methods of GD images is now much faster on PHP 5.5+ (@mlocati)
    • ๐Ÿ›  Fix loading of PNG indexed images with GD (@mlocati)
    • Loading indexed images with GD is now much faster on PHP 5.5+ (@mlocati)
    • โž• Add support to grayscale images with Gmagick (@mlocati)
    • โž• Add support to alpha channels of Gmagick images (@mlocati)
    • ๐Ÿ›  Fix getColorAt method of Gmagick images (@mlocati)
    • โž• Add getTransformations to the Autorotate filter, so that you can get the list of transformations that should be applied to an image accordingly to the EXIF metadata (@mlocati)
    • ๐Ÿ“‡ The metadata reader now doesn't throw exceptions or warnings (@lentex, @mlocati)
    • ๐Ÿ›  Fix documentation (@ZhangChaoWN, @Mark-H, @mlocati)
    • ๐Ÿ›  Fix pixel range issue with Gmagick image (@b-viguier)
    • ๐Ÿ›  Fix text drawer method on Windows when using relative font file paths (@mlocati)
    • ๐Ÿ›  Fix box font method on Windows when using relative font file paths (@mlocati)
    • ๐Ÿ›  Fix crash on Windows when loading an image with Imagick (@mlocati)
    • ๐Ÿ›  Fix generation of API documentation (@mlocati)
    • Add jpeg_sampling_factors option when saving JPEG images (Gmagick/Imagick only) (@ausi)
    • โž• Add BMP as supported image format (@mlocati)
    • โž• Add support to new image type constants of Imagick (@ausi)
    • ๐Ÿ‘ Check that Imagick correctly supports profiles (@ausi)
    • โž• Add setMetadataReader/getMetadataReader to ImagineInterface (@mlocati)
      ๐Ÿ’ฅ BREAKING CHANGE if you have your own ImagineInterface implementation, it now must implement those two methods
    • ๐Ÿ›  Fix creating Gmagick images with alpha colors when palette doesn't support alpha (@FractalizeR)
    • ๐Ÿ›  Fix warning about deprecated clone method in copy method of Imagick images (@mlocati)
    • ๐Ÿ›  Fix copy methods of Images (the original image and its new copy are now fully detached) (@mlocati)
    • ๐Ÿ‘ฏ It's now possible to use clone $image as an alternative to $image->copy() (@mlocati)
    • โž• Add support to custom classes for BoxInterface, MetadataReaderInterface, FontInterface, LoaderInterface, LayersInterface, ImageInterface (@mlocati)
      ๐Ÿ’ฅ BREAKING CHANGE if you have your own ImagineInterface implementation, it now must implement the methods of ClassFactoryAwareInterface
    • โž• Add support for pasting with alpha for GD and Imagick (@AlloVince, @mlocati)
    • ๐Ÿ‘ป Downscaling a Box until it reaches a dimension less than 1 returns a box with dimension of 1 instead of throwing an exception (@mlocati)
      ๐Ÿ’ฅ BREAKING CHANGE if you relied on Box::scale throwing an exception in this case
    • ๐Ÿ†• New filters: BlackWhite, BorderDetection, Negation, Neighborhood (@rejinka)
    • Minor optimization of filters based on OnPixelBased (@rejinka, @mlocati)
    • โž• Add flag to thumbnail to allow upscaling images (@vlakoff)
      NOTE the $mode argument has been renamed to $settings, and it's now an integer (but old string values are accepted for backward compatibility)
    • ๐Ÿ†• New filter: brightness (@lenybernard, @mlocati)
    • ๐Ÿ†• New filter: colvolve available for all graphics libraries except gmagick with version prior to 2.0.1RC2 (@armatronic, @mlocati)
    • ๐Ÿ›  Fix bug in Imagine\Image\Palette\RGB::blend() (@dmolineus, @mlocati)
    • ๐Ÿšš Autoload was moved from PSR-0 to PSR-4, and code files moved from /lib/Imagine to /src (@mlocati)
  • v0.7.1 Changes

    May 16, 2017
    • โœ‚ Remove Symfony PHPUnit bridge as dependency (@craue)
  • v0.7.0 Changes

    May 02, 2017
    • ๐Ÿ›  Fix memory usage on metadata reading (@Seldaek)
    • ๐Ÿ‘ PHP 7.1 support
    • โœ… Latest Imagemagick compatibility (@jdewit)
  • v0.6.3 Changes

    September 19, 2015
    • ๐Ÿ›  Fix wrong array_merge when calling Transformation::getFilters without filters
    • โž• Add export-ignore git attribute (@Benoth)
    • ๐Ÿ›  Fix docblocks (@Sm0ke0ut and @norkunas)
    • ๐Ÿ›  Fix animated gif loop length options (@jygaulier)
    • ๐Ÿ— Multiple tweaks for the repository and travis builds (@localheinz, @vrkansagara and @dunzun)
    • ๐Ÿ›  Fix metadata extraction from streams (@armatronic)
    • ๐Ÿ›  Fix autorotation (@tarleb)
    • ๐Ÿ“‡ Load exifmetadata reader whenever possible
    • โž• Add metadata getter
  • v0.6.2 Changes

    November 11, 2014
    • Stripping image containing an invalid ICC profile fails
    • ๐Ÿ“‡ MetadataBag now implements \Countable
    • ๐Ÿ›  Fix wrong array_merge in MetadataBag giving invalid results with HTTP resources (@javaguirre)
    • ๐Ÿ›  Fix Imagick merge strategy (@GrahamCampbell)
    • ๐Ÿ›  Fixed various alpha issues (@RadekDvorak)
    • ๐Ÿ›  Fix Image cloning on HHVM (@RdeWilde)
    • ๐Ÿ›  Fix exception on invalid file using GD driver (@vlakoff).
    • ๐Ÿ›  Fix ImageInterface::getSize on animated GIFs (@sokac)
  • v0.6.1 Changes

    June 16, 2014
    • ๐Ÿ›  Fix invalid namespace usage (#336 @csanquer).
  • v0.6.0 Changes

    June 13, 2014
    • BC break: Colors are now provided through the PaletteInterface. Any call to previous Imagine\Image\Color constructor must be removed and use the palette provided by Imagine\Image\ImageInterface::getPalette to create colors.
    • 0๏ธโƒฃ BC break : Animated GIF default delay is no longer 800ms but null. This avoids resettings a delay on animated image.
    • โž• Add support for ICC profiles
    • โž• Add support for CMYK and grayscale colorspace images.
    • โž• Add filter argument to ImageInterface::thumbnail method.
    • โž• Add priority to filters (@Richtermeister).
    • โž• Add blur effect (@Nokrosis).
    • ๐Ÿ“‡ Rename "quality" option to "jpeg_quality" and apply it only to JPEG files (@vlakoff).
    • Add "png_compression_level" option (@vlakoff).
    • Rename "filters" option to "png_compression_filter" (@vlakoff).
    • ๐Ÿ—„ Deprecate quality and filters ManipulatorInterface::save options, use jpeg_quality, png_compression_level and png_compression_filter instead.
    • โž• Add support for alpha blending in GD drawer (@salem).
    • โž• Add width parameter to Drawer::text (@salemgolemugoo).
    • โž• Add NotSupportedException when a driver does not support an operation (@rouffj).
    • โž• Add support for metadata.
    • ๐Ÿ›  Fix #158: GD alpha detection + Color::isOpaque are broken.
    • ๐Ÿ›  Fix color extraction for non-RGB palettes.