Class

Imagine\Imagick\Image

class Image extends AbstractImage

Image implementation using the Imagick PHP extension

Methods

ManipulatorInterface thumbnail(BoxInterface $size, string $mode = ImageInterface::THUMBNAIL_INSET, string $filter = ImageInterface::FILTER_UNDEFINED)

Generates a thumbnail from a current image Returns it as a new image, doesn't modify the current image

from AbstractImage
MetadataInterface metadata()

Returns the Image's meta data

from AbstractImage
__clone()

Assures the metadata instance will be cloned, too

from AbstractImage
__construct(Imagick $imagick, PaletteInterface $palette, MetadataBag $metadata)

Constructs a new Image instance

__destruct()

Destroys allocated imagick resources

Imagick getImagick()

Returns the underlying \Imagick instance

ManipulatorInterface copy()

Copies current source image into a new ImageInterface instance

ManipulatorInterface crop(PointInterface $start, BoxInterface $size)

Crops a specified box out of the source image (modifies the source image) Returns cropped self

ManipulatorInterface flipHorizontally()

Flips current image using horizontal axis

ManipulatorInterface flipVertically()

Flips current image using vertical axis

ManipulatorInterface strip()

Remove all profiles and comments

ManipulatorInterface paste(ImageInterface $image, PointInterface $start)

Pastes an image into a parent image Throws exceptions if image exceeds parent image borders or if paste operation fails

ManipulatorInterface resize(BoxInterface $size, string $filter = ImageInterface::FILTER_UNDEFINED)

Resizes current image and returns self

ManipulatorInterface rotate(integer $angle, ColorInterface $background = null)

Rotates an image at the given angle.

ManipulatorInterface save(string $path = null, array $options = array())

Saves the image at a specified path, the target file extension is used to determine file format, only jpg, jpeg, gif, png, wbmp and xbm are supported

ManipulatorInterface show(string $format, array $options = array())

Outputs the image content

string get(string $format, array $options = array())

Returns the image content as a binary string

ImageInterface interlace(string $scheme)

Enables or disables interlacing

string __toString()

Returns the image content as a PNG binary string

DrawerInterface draw()

Instantiates and returns a DrawerInterface instance for image drawing

EffectsInterface effects()

BoxInterface getSize()

Returns current image size

ManipulatorInterface applyMask(ImageInterface $mask)

Applies a given mask to current image's alpha channel

ImageInterface mask()

Transforms creates a grayscale mask from current image, returns a new image, while keeping the existing image unmodified

ManipulatorInterface fill(FillInterface $fill)

Fills image with provided filling, by replacing each pixel's color in the current image with corresponding color from FillInterface, and returns modified image

array histogram()

Returns array of image colors as Imagine\Image\Palette\Color\ColorInterface instances

ColorInterface getColorAt(PointInterface $point)

Returns color at specified positions of current image

ColorInterface pixelToColor(ImagickPixel $pixel)

Returns a color given a pixel, depending the Palette context

LayersInterface layers()

Returns the image layers when applicable.

ImageInterface usePalette(PaletteInterface $palette)

Set a palette for the image.

PaletteInterface palette()

Return the current color palette

ImageInterface profile(ProfileInterface $profile)

Applies a color profile on the Image

Details

in AbstractImage at line 27
public ManipulatorInterface thumbnail(BoxInterface $size, string $mode = ImageInterface::THUMBNAIL_INSET, string $filter = ImageInterface::FILTER_UNDEFINED)

Generates a thumbnail from a current image Returns it as a new image, doesn't modify the current image

Parameters

BoxInterface $size
string $mode
string $filter The filter to use for resizing, one of ImageInterface::FILTER_*

Return Value

ManipulatorInterface

Exceptions

RuntimeException

in AbstractImage at line 103
public MetadataInterface metadata()

Returns the Image's meta data

Return Value

MetadataInterface

in AbstractImage at line 111
public __clone()

Assures the metadata instance will be cloned, too

at line 67
public __construct(Imagick $imagick, PaletteInterface $palette, MetadataBag $metadata)

Constructs a new Image instance

Parameters

Imagick $imagick
PaletteInterface $palette
MetadataBag $metadata

at line 82
public __destruct()

Destroys allocated imagick resources

at line 95
public Imagick getImagick()

Returns the underlying \Imagick instance

Return Value

Imagick

at line 103
public ManipulatorInterface copy()

Copies current source image into a new ImageInterface instance

Return Value

ManipulatorInterface

Exceptions

RuntimeException

at line 121
public ManipulatorInterface crop(PointInterface $start, BoxInterface $size)

Crops a specified box out of the source image (modifies the source image) Returns cropped self

at line 141
public ManipulatorInterface flipHorizontally()

Flips current image using horizontal axis

Return Value

ManipulatorInterface

Exceptions

RuntimeException

at line 155
public ManipulatorInterface flipVertically()

Flips current image using vertical axis

Return Value

ManipulatorInterface

Exceptions

RuntimeException

at line 169
public ManipulatorInterface strip()

Remove all profiles and comments

Return Value

ManipulatorInterface

Exceptions

RuntimeException

at line 184
public ManipulatorInterface paste(ImageInterface $image, PointInterface $start)

Pastes an image into a parent image Throws exceptions if image exceeds parent image borders or if paste operation fails

Returns source image

at line 206
public ManipulatorInterface resize(BoxInterface $size, string $filter = ImageInterface::FILTER_UNDEFINED)

Resizes current image and returns self

Parameters

BoxInterface $size
string $filter

Return Value

ManipulatorInterface

Exceptions

RuntimeException

at line 220
public ManipulatorInterface rotate(integer $angle, ColorInterface $background = null)

Rotates an image at the given angle.

Optional $background can be used to specify the fill color of the empty area of rotated image.

Parameters

integer $angle
ColorInterface $background

Return Value

ManipulatorInterface

Exceptions

RuntimeException

at line 241
public ManipulatorInterface save(string $path = null, array $options = array())

Saves the image at a specified path, the target file extension is used to determine file format, only jpg, jpeg, gif, png, wbmp and xbm are supported

Parameters

string $path
array $options

Return Value

ManipulatorInterface

Exceptions

RuntimeException

at line 261
public ManipulatorInterface show(string $format, array $options = array())

Outputs the image content

Parameters

string $format
array $options

Return Value

ManipulatorInterface

Exceptions

RuntimeException

at line 272
public string get(string $format, array $options = array())

Returns the image content as a binary string

Parameters

string $format
array $options

Return Value

string binary

Exceptions

RuntimeException

at line 287
public ImageInterface interlace(string $scheme)

Enables or disables interlacing

Parameters

string $scheme

Return Value

ImageInterface

Exceptions

InvalidArgumentException When an unsupported Interface type is supplied

at line 337
public string __toString()

Returns the image content as a PNG binary string

Return Value

string binary

Exceptions

RuntimeException

at line 345
public DrawerInterface draw()

Instantiates and returns a DrawerInterface instance for image drawing

Return Value

DrawerInterface

at line 353
public EffectsInterface effects()

Return Value

EffectsInterface

at line 361
public BoxInterface getSize()

Returns current image size

Return Value

BoxInterface

at line 376
public ManipulatorInterface applyMask(ImageInterface $mask)

Applies a given mask to current image's alpha channel

Parameters

ImageInterface $mask

Return Value

ManipulatorInterface

at line 409
public ImageInterface mask()

Transforms creates a grayscale mask from current image, returns a new image, while keeping the existing image unmodified

Return Value

ImageInterface

at line 426
public ManipulatorInterface fill(FillInterface $fill)

Fills image with provided filling, by replacing each pixel's color in the current image with corresponding color from FillInterface, and returns modified image

Parameters

FillInterface $fill

Return Value

ManipulatorInterface

at line 455
public array histogram()

Returns array of image colors as Imagine\Image\Palette\Color\ColorInterface instances

Return Value

array

at line 473
public ColorInterface getColorAt(PointInterface $point)

Returns color at specified positions of current image

Parameters

PointInterface $point

Return Value

ColorInterface

Exceptions

RuntimeException

at line 499
public ColorInterface pixelToColor(ImagickPixel $pixel)

Returns a color given a pixel, depending the Palette context

Note : this method is public for PHP 5.3 compatibility

Parameters

ImagickPixel $pixel

Return Value

ColorInterface

Exceptions

InvalidArgumentException In case a unknown color is requested

at line 532
public LayersInterface layers()

Returns the image layers when applicable.

Return Value

LayersInterface

Exceptions

RuntimeException In case the layer can not be returned
OutOfBoundsException In case the index is not a valid value

at line 540
public ImageInterface usePalette(PaletteInterface $palette)

Set a palette for the image.

Useful to change colorspace.

Parameters

PaletteInterface $palette

Return Value

ImageInterface

Exceptions

RuntimeException

at line 577
public PaletteInterface palette()

Return the current color palette

Return Value

PaletteInterface

at line 585
public ImageInterface profile(ProfileInterface $profile)

Applies a color profile on the Image

Parameters

ProfileInterface $profile

Return Value

ImageInterface

Exceptions

RuntimeException