From 417a0cb959504cd284e68d70e034511ca4bac7fc Mon Sep 17 00:00:00 2001 From: Fluffy-Bean Date: Fri, 22 Jul 2022 18:09:50 +0100 Subject: [PATCH] Fixed Gif previews --- upload.php | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/upload.php b/upload.php index e5c72de..d8f7b9b 100644 --- a/upload.php +++ b/upload.php @@ -68,7 +68,22 @@ if (move_uploaded_file($_FILES['image']['tmp_name'], $image_path)) { // Make thumbnail $image_thumbnail = new Imagick($image_path); - $image_thumbnail->resizeImage(300,null,null,1,null); + // Get image format + $image_format = $image_thumbnail->getImageFormat(); + // If image is gif + if ($image_format == 'GIF') { + $image_thumbnail = $image_thumbnail->coalesceImages(); + foreach ($image_thumbnail as $frame) { + $frame->thumbnailImage(300, null); + $frame->setImagePage(300, null, 0, 0); + } + // Put image back together + $image_thumbnail = $image_thumbnail->deconstructImages(); + }else{ + // Image not gif + $image_thumbnail->resizeImage(300,null,null,1,null); + } + // Save image $image_thumbnail->writeImage("images/thumbnails/".$image_basename); header("Location:upload.php?r=success");