- Added nullable properties
This commit is contained in:
parent
dab73eab9a
commit
90932fc6cc
@ -26,17 +26,6 @@ class Canvas {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function __destruct() {
|
|
||||||
$this->destroy();
|
|
||||||
}
|
|
||||||
|
|
||||||
public function destroy() : self
|
|
||||||
{
|
|
||||||
\is_resource($this->image) && \imagedestroy($this->image);
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function create(int $width, int $height) : self
|
public function create(int $width, int $height) : self
|
||||||
{
|
{
|
||||||
$this->width = $width;
|
$this->width = $width;
|
||||||
@ -200,8 +189,18 @@ class Canvas {
|
|||||||
unset($src->image);
|
unset($src->image);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function constrain(int $width, int $height, bool $immutable = true) : self
|
public function constrain(? int $width, ? int $height, bool $immutable = true) : self
|
||||||
{
|
{
|
||||||
|
if ($width === null && $height === null) {
|
||||||
|
throw new \LogicException("At least one limiting factor must be provided, either width or height (or both).");
|
||||||
|
}
|
||||||
|
elseif ($width === null) {
|
||||||
|
$width = $this->width * ( $height / $this->height );
|
||||||
|
}
|
||||||
|
elseif ($height === null) {
|
||||||
|
$height = $this->height * ( $width / $this->width );
|
||||||
|
}
|
||||||
|
|
||||||
if ( ($this->width > $width) || ($this->height > $height) ) {
|
if ( ($this->width > $width) || ($this->height > $height) ) {
|
||||||
if ($this->width > $this->height) {
|
if ($this->width > $this->height) {
|
||||||
$height = $this->height * ( $width / $this->width );
|
$height = $this->height * ( $width / $this->width );
|
||||||
@ -224,6 +223,7 @@ class Canvas {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -120,12 +120,12 @@ class Image extends Canvas {
|
|||||||
return $img;
|
return $img;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function save(int $quality = null, $filters = null) : bool
|
public function save(? int $quality = null, $filters = null) : bool
|
||||||
{
|
{
|
||||||
return $this->render($this->filename, $quality, $filters);
|
return $this->render($this->filename, $quality, $filters);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function render(string $path = null, int $quality = null, $filters = null) # : bool
|
public function render(? string $path = null, ? int $quality = null, $filters = null) # : bool
|
||||||
{
|
{
|
||||||
$layers = $this->layers();
|
$layers = $this->layers();
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user