Class

Imagine\Gmagick\Image

class Image extends AbstractImage

Image implementation using the Gmagick 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(Gmagick $gmagick, PaletteInterface $palette, MetadataBag $metadata)

Constructs a new Image instance

__destruct()

Destroys allocated gmagick resources

Gmagick getGmagick()

Returns gmagick 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

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(GmagickPixel $pixel)

Returns a color given a pixel, depending the Palette context

LayersInterface layers()

Returns the image layers when applicable.

ImageInterface interlace(string $scheme)

Enables or disables interlacing

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 60
public __construct(Gmagick $gmagick, PaletteInterface $palette, MetadataBag $metadata)

Constructs a new Image instance

Parameters

Gmagick $gmagick
PaletteInterface $palette
MetadataBag $metadata

at line 71
public __destruct()

Destroys allocated gmagick resources

at line 84
public Gmagick getGmagick()

Returns gmagick instance

Return Value

Gmagick

at line 92
public ManipulatorInterface copy()

Copies current source image into a new ImageInterface instance

Return Value

ManipulatorInterface

Exceptions

RuntimeException

at line 100
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 118
public ManipulatorInterface flipHorizontally()

Flips current image using horizontal axis

Return Value

ManipulatorInterface

Exceptions

RuntimeException

at line 132
public ManipulatorInterface flipVertically()

Flips current image using vertical axis

Return Value

ManipulatorInterface

Exceptions

RuntimeException

at line 146
public ManipulatorInterface strip()

Remove all profiles and comments

Return Value

ManipulatorInterface

Exceptions

RuntimeException

at line 161
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 183
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 305
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 327
public ManipulatorInterface show(string $format, array $options = array())

Outputs the image content

Parameters

string $format
array $options

Return Value

ManipulatorInterface

Exceptions

RuntimeException

at line 338
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 382
public string __toString()

Returns the image content as a PNG binary string

Return Value

string binary

Exceptions

RuntimeException

at line 390
public DrawerInterface draw()

Instantiates and returns a DrawerInterface instance for image drawing

Return Value

DrawerInterface

at line 398
public EffectsInterface effects()

Return Value

EffectsInterface

at line 406
public BoxInterface getSize()

Returns current image size

Return Value

BoxInterface

at line 421
public ManipulatorInterface applyMask(ImageInterface $mask)

Applies a given mask to current image's alpha channel

Parameters

ImageInterface $mask

Return Value

ManipulatorInterface

at line 447
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 463
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 496
public array histogram()

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

Return Value

array

at line 514
public ColorInterface getColorAt(PointInterface $point)

Returns color at specified positions of current image

Parameters

PointInterface $point

Return Value

ColorInterface

Exceptions

RuntimeException

at line 547
public ColorInterface pixelToColor(GmagickPixel $pixel)

Returns a color given a pixel, depending the Palette context

Note : this method is public for PHP 5.3 compatibility

Parameters

GmagickPixel $pixel

Return Value

ColorInterface

Exceptions

InvalidArgumentException In case a unknown color is requested

at line 589
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 597
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 618
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 653
public PaletteInterface palette()

Return the current color palette

Return Value

PaletteInterface

at line 661
public ImageInterface profile(ProfileInterface $profile)

Applies a color profile on the Image

Parameters

ProfileInterface $profile

Return Value

ImageInterface

Exceptions

RuntimeException