diff --git a/composer.json b/composer.json index 423f2bbe..711b7ed9 100644 --- a/composer.json +++ b/composer.json @@ -14,7 +14,7 @@ "require": { "php": "^8.1", "ext-mbstring": "*", - "intervention/gif": "^3" + "intervention/gif": "^4" }, "require-dev": { "phpunit/phpunit": "^9", diff --git a/src/Drivers/Gd/Encoders/GifEncoder.php b/src/Drivers/Gd/Encoders/GifEncoder.php index e918a914..294dd751 100644 --- a/src/Drivers/Gd/Encoders/GifEncoder.php +++ b/src/Drivers/Gd/Encoders/GifEncoder.php @@ -27,8 +27,7 @@ class GifEncoder extends DriverSpecializedEncoder { $builder = GifBuilder::canvas( $image->width(), - $image->height(), - $image->loops() + $image->height() ); foreach ($image as $frame) { @@ -38,6 +37,8 @@ class GifEncoder extends DriverSpecializedEncoder ); } + $builder->setLoops($image->loops()); + return new EncodedImage($builder->encode(), 'image/gif'); } } diff --git a/src/Encoders/FileExtensionEncoder.php b/src/Encoders/FileExtensionEncoder.php index 41b7821f..5637792e 100644 --- a/src/Encoders/FileExtensionEncoder.php +++ b/src/Encoders/FileExtensionEncoder.php @@ -2,7 +2,7 @@ namespace Intervention\Image\Encoders; -use Intervention\Gif\Exception\EncoderException; +use Intervention\Image\Exceptions\EncoderException; use Intervention\Image\Interfaces\EncodedImageInterface; use Intervention\Image\Interfaces\EncoderInterface; use Intervention\Image\Interfaces\ImageInterface; diff --git a/src/Encoders/MediaTypeEncoder.php b/src/Encoders/MediaTypeEncoder.php index b71a531b..1fb6751b 100644 --- a/src/Encoders/MediaTypeEncoder.php +++ b/src/Encoders/MediaTypeEncoder.php @@ -2,7 +2,7 @@ namespace Intervention\Image\Encoders; -use Intervention\Gif\Exception\EncoderException; +use Intervention\Image\Exceptions\EncoderException; use Intervention\Image\Interfaces\EncodedImageInterface; use Intervention\Image\Interfaces\EncoderInterface; use Intervention\Image\Interfaces\ImageInterface; diff --git a/src/Exceptions/AnimationException.php b/src/Exceptions/AnimationException.php index 0019e2a3..e77279bf 100644 --- a/src/Exceptions/AnimationException.php +++ b/src/Exceptions/AnimationException.php @@ -4,5 +4,4 @@ namespace Intervention\Image\Exceptions; class AnimationException extends \RuntimeException { - // } diff --git a/src/Exceptions/ColorException.php b/src/Exceptions/ColorException.php index 4eda9322..2287c115 100644 --- a/src/Exceptions/ColorException.php +++ b/src/Exceptions/ColorException.php @@ -4,5 +4,4 @@ namespace Intervention\Image\Exceptions; class ColorException extends \RuntimeException { - // } diff --git a/src/Exceptions/DecoderException.php b/src/Exceptions/DecoderException.php index 9271e202..a2cb273e 100644 --- a/src/Exceptions/DecoderException.php +++ b/src/Exceptions/DecoderException.php @@ -4,5 +4,4 @@ namespace Intervention\Image\Exceptions; class DecoderException extends \RuntimeException { - // } diff --git a/src/Exceptions/EncoderException.php b/src/Exceptions/EncoderException.php new file mode 100644 index 00000000..a6ac36b4 --- /dev/null +++ b/src/Exceptions/EncoderException.php @@ -0,0 +1,7 @@ +