Imagine\Imagick\Image | Imagine API

- Classes
- Namespaces
- Interfaces
- Index

Imagine API
Class

# Imagine\Imagick\Image

class Image implements ImageInterface

Image implementation using the Imagick PHP extension

## Methods

| __construct(Imagick $imagick) Constructs Image with Imagick and Imagine instances |
| __destruct() Destroys allocated imagick resources |
Imagick | getImagick() Returns 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, Color $background = null) Rotates an image at the given angle. |
ManipulatorInterface | save(string $path, 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 |
ManipulatorInterface | thumbnail(BoxInterface $size, string $mode = ImageInterface::THUMBNAIL_INSET) Generates a thumbnail from a current image Returns it as a new image, doesn't modify the current image |
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\Color instances |
Color | getColorAt(PointInterface $point) Returns color at specified positions of current image |
LayersInterface | layers() Returns the image layers when applicable. |

## Details

###
at line 46
`public __construct(Imagick $imagick)`

Constructs Image with Imagick and Imagine instances

#### Parameters

Imagick | $imagick |

###
at line 55
`public __destruct()`

Destroys allocated imagick resources

###
at line 68
`public Imagick getImagick()`

Returns imagick instance

#### Return Value

Imagick |

###
at line 76
`public ManipulatorInterface copy()`

Copies current source image into a new ImageInterface instance

#### Return Value

ManipulatorInterface |

#### Exceptions

RuntimeException |

###
at line 96
`public ManipulatorInterface crop(PointInterface $start, BoxInterface $size)`

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

#### Parameters

PointInterface | $start |
BoxInterface | $size |

#### Return Value

ManipulatorInterface |

#### Exceptions

OutOfBoundsException |
RuntimeException |

###
at line 126
`public ManipulatorInterface flipHorizontally()`

Flips current image using horizontal axis

#### Return Value

ManipulatorInterface |

#### Exceptions

RuntimeException |

###
at line 142
`public ManipulatorInterface flipVertically()`

Flips current image using vertical axis

#### Return Value

ManipulatorInterface |

#### Exceptions

RuntimeException |

###
at line 158
`public ManipulatorInterface strip()`

Remove all profiles and comments

#### Return Value

ManipulatorInterface |

#### Exceptions

RuntimeException |

###
at line 174
`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

#### Parameters

ImageInterface | $image |
PointInterface | $start |

#### Return Value

ManipulatorInterface |

#### Exceptions

InvalidArgumentException |
OutOfBoundsException |
RuntimeException |

###
at line 209
`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 253
`public ManipulatorInterface rotate(integer $angle, Color $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 |
Color | $background |

#### Return Value

ManipulatorInterface |

#### Exceptions

RuntimeException |

###
at line 276
`public ManipulatorInterface save(string $path, 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 293
`public ManipulatorInterface show(string $format, array $options = array())`

Outputs the image content

#### Parameters

string | $format |
array | $options |

#### Return Value

ManipulatorInterface |

#### Exceptions

RuntimeException |

###
at line 304
`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 321
`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 372
`public string __toString()`

Returns the image content as a PNG binary string

#### Return Value

string | binary

#### Exceptions

RuntimeException |

###
at line 380
`public ManipulatorInterface thumbnail(BoxInterface $size, string $mode = ImageInterface::THUMBNAIL_INSET)`

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

#### Parameters

BoxInterface | $size |
string | $mode |

#### Return Value

ManipulatorInterface |

#### Exceptions

RuntimeException |

###
at line 430
`public DrawerInterface draw()`

Instantiates and returns a DrawerInterface instance for image drawing

#### Return Value

DrawerInterface |

###
at line 438
`public EffectsInterface effects()`

#### Return Value

EffectsInterface |

###
at line 446
`public BoxInterface getSize()`

Returns current image size

#### Return Value

BoxInterface |

###
at line 463
`public ManipulatorInterface applyMask(ImageInterface $mask)`

Applies a given mask to current image's alpha channel

#### Parameters

ImageInterface | $mask |

#### Return Value

ManipulatorInterface |

###
at line 514
`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 533
`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 567
`public array histogram()`

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

#### Return Value

array |

###
at line 592
`public Color getColorAt(PointInterface $point)`

Returns color at specified positions of current image

#### Parameters

PointInterface | $point |

#### Return Value

Color |

#### Exceptions

RuntimeException |

###
at line 614
`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