| Server IP : 34.87.99.72 / Your IP : 216.73.217.31 Web Server : Apache/2.4.46 (Unix) OpenSSL/1.1.1n System : Linux zlock-bitnami-lamp-prod-v2-vm 4.19.0-16-cloud-amd64 #1 SMP Debian 4.19.181-1 (2021-03-19) x86_64 User : bitnami ( 1000) PHP Version : 7.4.18 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /opt/bitnami/apache/htdocs/app/vendor/intervention/image/src/Intervention/Image/ |
Upload File : |
<?php
namespace Intervention\Image;
class Constraint
{
/**
* Bit value of aspect ratio constraint
*/
const ASPECTRATIO = 1;
/**
* Bit value of upsize constraint
*/
const UPSIZE = 2;
/**
* Constraint size
*
* @var \Intervention\Image\Size
*/
private $size;
/**
* Integer value of fixed parameters
*
* @var int
*/
private $fixed = 0;
/**
* Create a new constraint based on size
*
* @param Size $size
*/
public function __construct(Size $size)
{
$this->size = $size;
}
/**
* Returns current size of constraint
*
* @return \Intervention\Image\Size
*/
public function getSize()
{
return $this->size;
}
/**
* Fix the given argument in current constraint
*
* @param int $type
* @return void
*/
public function fix($type)
{
$this->fixed = ($this->fixed & ~(1 << $type)) | (1 << $type);
}
/**
* Checks if given argument is fixed in current constraint
*
* @param int $type
* @return boolean
*/
public function isFixed($type)
{
return (bool) ($this->fixed & (1 << $type));
}
/**
* Fixes aspect ratio in current constraint
*
* @return void
*/
public function aspectRatio()
{
$this->fix(self::ASPECTRATIO);
}
/**
* Fixes possibility to size up in current constraint
*
* @return void
*/
public function upsize()
{
$this->fix(self::UPSIZE);
}
}