Skip to content

Releases: php-imagine/Imagine

v1.2.0

07 Dec 16:54
Compare
Choose a tag to compare
  • ExifMetadataReader now returns all the available metadata, not only EXIF and IFD0 (#701, @mlocati)

v1.1.0

25 Oct 06:47
Compare
Choose a tag to compare
  • New ImageInterface::THUMBNAIL_FLAG_NOCLONE flag for thumbnail() to let it modify the original image instance in order to save memory (@mlocati)

v1.0.2

24 Oct 14:08
Compare
Choose a tag to compare
  • Check that the Imagick PHP extension is not compiled using ImageMagick version 7.0.7-32 because it does not work correctly (@mlocati)

v1.0.1

27 Sep 12:26
Compare
Choose a tag to compare
  • Box now rounds the width/height it receives (previously it discarded the decimal points) (@mlocati)

v1.0.0

25 Sep 14:51
b9e15fa
Compare
Choose a tag to compare
  • 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

08 Sep 13:58
0bdd3cf
Compare
Choose a tag to compare

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

28 Aug 16:18
3010520
Compare
Choose a tag to compare

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)