mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-09-02 14:07:04 +03:00
Added: Incorrect image orientation
This commit is contained in:
parent
217207883f
commit
e3b62d24d8
87 changed files with 10461 additions and 21 deletions
|
|
@ -0,0 +1,181 @@
|
|||
<?php
|
||||
|
||||
/*
|
||||
* This file is part of the Imagine package.
|
||||
*
|
||||
* (c) Bulat Shakirzyanov <mallluhuct@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
namespace Imagine\Image;
|
||||
|
||||
use Imagine\Exception\InvalidArgumentException;
|
||||
use Imagine\Exception\OutOfBoundsException;
|
||||
use Imagine\Exception\RuntimeException;
|
||||
use Imagine\Image\Palette\Color\ColorInterface;
|
||||
use Imagine\Image\Fill\FillInterface;
|
||||
|
||||
/**
|
||||
* The manipulator interface
|
||||
*/
|
||||
interface ManipulatorInterface
|
||||
{
|
||||
const THUMBNAIL_INSET = 'inset';
|
||||
const THUMBNAIL_OUTBOUND = 'outbound';
|
||||
|
||||
/**
|
||||
* Copies current source image into a new ImageInterface instance
|
||||
*
|
||||
* @throws RuntimeException
|
||||
*
|
||||
* @return static
|
||||
*/
|
||||
public function copy();
|
||||
|
||||
/**
|
||||
* Crops a specified box out of the source image (modifies the source image)
|
||||
* Returns cropped self
|
||||
*
|
||||
* @param PointInterface $start
|
||||
* @param BoxInterface $size
|
||||
*
|
||||
* @throws OutOfBoundsException
|
||||
* @throws RuntimeException
|
||||
*
|
||||
* @return static
|
||||
*/
|
||||
public function crop(PointInterface $start, BoxInterface $size);
|
||||
|
||||
/**
|
||||
* Resizes current image and returns self
|
||||
*
|
||||
* @param BoxInterface $size
|
||||
* @param string $filter
|
||||
*
|
||||
* @throws RuntimeException
|
||||
*
|
||||
* @return static
|
||||
*/
|
||||
public function resize(BoxInterface $size, $filter = ImageInterface::FILTER_UNDEFINED);
|
||||
|
||||
/**
|
||||
* Rotates an image at the given angle.
|
||||
* Optional $background can be used to specify the fill color of the empty
|
||||
* area of rotated image.
|
||||
*
|
||||
* @param integer $angle
|
||||
* @param ColorInterface $background
|
||||
*
|
||||
* @throws RuntimeException
|
||||
*
|
||||
* @return static
|
||||
*/
|
||||
public function rotate($angle, ColorInterface $background = null);
|
||||
|
||||
/**
|
||||
* Pastes an image into a parent image
|
||||
* Throws exceptions if image exceeds parent image borders or if paste
|
||||
* operation fails
|
||||
*
|
||||
* Returns source image
|
||||
*
|
||||
* @param ImageInterface $image
|
||||
* @param PointInterface $start
|
||||
*
|
||||
* @throws InvalidArgumentException
|
||||
* @throws OutOfBoundsException
|
||||
* @throws RuntimeException
|
||||
*
|
||||
* @return static
|
||||
*/
|
||||
public function paste(ImageInterface $image, PointInterface $start);
|
||||
|
||||
/**
|
||||
* 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
|
||||
*
|
||||
* @param string $path
|
||||
* @param array $options
|
||||
*
|
||||
* @throws RuntimeException
|
||||
*
|
||||
* @return static
|
||||
*/
|
||||
public function save($path = null, array $options = array());
|
||||
|
||||
/**
|
||||
* Outputs the image content
|
||||
*
|
||||
* @param string $format
|
||||
* @param array $options
|
||||
*
|
||||
* @throws RuntimeException
|
||||
*
|
||||
* @return static
|
||||
*/
|
||||
public function show($format, array $options = array());
|
||||
|
||||
/**
|
||||
* Flips current image using horizontal axis
|
||||
*
|
||||
* @throws RuntimeException
|
||||
*
|
||||
* @return static
|
||||
*/
|
||||
public function flipHorizontally();
|
||||
|
||||
/**
|
||||
* Flips current image using vertical axis
|
||||
*
|
||||
* @throws RuntimeException
|
||||
*
|
||||
* @return static
|
||||
*/
|
||||
public function flipVertically();
|
||||
|
||||
/**
|
||||
* Remove all profiles and comments
|
||||
*
|
||||
* @throws RuntimeException
|
||||
*
|
||||
* @return static
|
||||
*/
|
||||
public function strip();
|
||||
|
||||
/**
|
||||
* Generates a thumbnail from a current image
|
||||
* Returns it as a new image, doesn't modify the current image
|
||||
*
|
||||
* @param BoxInterface $size
|
||||
* @param string $mode
|
||||
* @param string $filter The filter to use for resizing, one of ImageInterface::FILTER_*
|
||||
*
|
||||
* @throws RuntimeException
|
||||
*
|
||||
* @return static
|
||||
*/
|
||||
public function thumbnail(BoxInterface $size, $mode = self::THUMBNAIL_INSET, $filter = ImageInterface::FILTER_UNDEFINED);
|
||||
|
||||
/**
|
||||
* Applies a given mask to current image's alpha channel
|
||||
*
|
||||
* @param ImageInterface $mask
|
||||
*
|
||||
* @return static
|
||||
*/
|
||||
public function applyMask(ImageInterface $mask);
|
||||
|
||||
/**
|
||||
* Fills image with provided filling, by replacing each pixel's color in
|
||||
* the current image with corresponding color from FillInterface, and
|
||||
* returns modified image
|
||||
*
|
||||
* @param FillInterface $fill
|
||||
*
|
||||
* @return static
|
||||
*/
|
||||
public function fill(FillInterface $fill);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue