class Transformation implements FilterInterface, ManipulatorInterface

A transformation filter.

Methods

__construct(ImagineInterface $imagine = null)

Class constructor.

applyFilter(ImageInterface $image, FilterInterface $filter)

Applies a given FilterInterface onto given ImageInterface and returns modified ImageInterface.

array
getFilters()

Returns a list of filters sorted by their priority. Filters with same priority will be returned in the order they were added.

apply(ImageInterface $image)

Applies scheduled transformation to an ImageInterface instance.

copy()

Copies current source image into a new ImageInterface instance.

$this
crop(PointInterface $start, BoxInterface $size)

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

$this
flipHorizontally()

Flips current image using vertical axis.

$this
flipVertically()

Flips current image using horizontal axis.

$this
strip()

Remove all profiles and comments.

$this
paste(ImageInterface $image, PointInterface $start, int $alpha = 100)

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

$this
applyMask(ImageInterface $mask)

Applies a given mask to current image's alpha channel.

$this
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.

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

Resizes current image and returns self.

$this
rotate(int $angle, ColorInterface $background = null)

Rotates an image at the given angle.

$this
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, xbm, webp and bmp are supported.

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

Outputs the image content.

thumbnail(BoxInterface $size, int|string $settings = ImageInterface::THUMBNAIL_INSET, string $filter = ImageInterface::FILTER_UNDEFINED)

Generates a thumbnail from a current image Returns it as a new image without modifying the current image unless the THUMBNAIL_FLAG_NOCLONE flag is specified.

$this
add(FilterInterface $filter, int $priority = 0)

Registers a given FilterInterface in an internal array of filters for later application to an instance of ImageInterface.

Details

at line 63
__construct(ImagineInterface $imagine = null)

Class constructor.

Parameters

ImagineInterface $imagine An ImagineInterface instance

at line 78
ImageInterface applyFilter(ImageInterface $image, FilterInterface $filter)

Applies a given FilterInterface onto given ImageInterface and returns modified ImageInterface.

Parameters

ImageInterface $image
FilterInterface $filter

Return Value

ImageInterface

Exceptions

InvalidArgumentException

at line 95
array getFilters()

Returns a list of filters sorted by their priority. Filters with same priority will be returned in the order they were added.

Return Value

array

at line 114
ImageInterface apply(ImageInterface $image)

Applies scheduled transformation to an ImageInterface instance.

Parameters

ImageInterface $image

Return Value

ImageInterface returns the processed ImageInterface instance

See also

FilterInterface::apply

at line 128
ManipulatorInterface copy()

Copies current source image into a new ImageInterface instance.

at line 138
$this 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

$this

Exceptions

OutOfBoundsException
RuntimeException

See also

ManipulatorInterface::crop

at line 148
$this flipHorizontally()

Flips current image using vertical axis.

Return Value

$this

Exceptions

RuntimeException

See also

ManipulatorInterface::flipHorizontally

at line 158
$this flipVertically()

Flips current image using horizontal axis.

Return Value

$this

Exceptions

RuntimeException

See also

ManipulatorInterface::flipVertically

at line 168
$this strip()

Remove all profiles and comments.

Return Value

$this

Exceptions

RuntimeException

See also

ManipulatorInterface::strip

at line 178
$this paste(ImageInterface $image, PointInterface $start, int $alpha = 100)

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
int $alpha How to paste the image, from 0 (fully transparent) to 100 (fully opaque)

Return Value

$this

Exceptions

InvalidArgumentException
RuntimeException

See also

ManipulatorInterface::paste

at line 188
$this applyMask(ImageInterface $mask)

Applies a given mask to current image's alpha channel.

Parameters

ImageInterface $mask

Return Value

$this

See also

ManipulatorInterface::applyMask

at line 198
$this 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

$this

See also

ManipulatorInterface::fill

at line 208
$this resize(BoxInterface $size, string $filter = ImageInterface::FILTER_UNDEFINED)

Resizes current image and returns self.

Parameters

BoxInterface $size
string $filter

Return Value

$this

Exceptions

RuntimeException

See also

ManipulatorInterface::resize

at line 218
$this rotate(int $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

int $angle
ColorInterface $background

Return Value

$this

Exceptions

RuntimeException

See also

ManipulatorInterface::rotate

at line 228
$this 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, xbm, webp and bmp are supported.

Please remark that bmp is supported by the GD driver only since PHP 7.2.

Parameters

string $path
array $options

Return Value

$this

Exceptions

RuntimeException

See also

ManipulatorInterface::save

at line 238
$this show(string $format, array $options = array())

Outputs the image content.

Parameters

string $format
array $options

Return Value

$this

Exceptions

RuntimeException

See also

ManipulatorInterface::show

at line 248
ManipulatorInterface thumbnail(BoxInterface $size, int|string $settings = ImageInterface::THUMBNAIL_INSET, string $filter = ImageInterface::FILTER_UNDEFINED)

Generates a thumbnail from a current image Returns it as a new image without modifying the current image unless the THUMBNAIL_FLAG_NOCLONE flag is specified.

Parameters

BoxInterface $size
int|string $settings One or more of the ManipulatorInterface::THUMBNAIL_ flags (joined with |). It may be a string for backward compatibility with old constant values that were strings.
string $filter The filter to use for resizing, one of ImageInterface::FILTER_*

Return Value

ManipulatorInterface

Exceptions

RuntimeException

See also

ManipulatorInterface::thumbnail

at line 261
$this add(FilterInterface $filter, int $priority = 0)

Registers a given FilterInterface in an internal array of filters for later application to an instance of ImageInterface.

Parameters

FilterInterface $filter
int $priority

Return Value

$this