imageinterlace ()でプログレッシブ JPG を生成しようとしましたか? 小さい画像はわずかに大きくなりますが、大きい画像ははるかに小さくなります。これは、画像最適化コードのパズルの最後のピースでした。
サンプルコード
<?php
$new_img = imagecreatetruecolor($img_width, $img_height);
imageinterlace($new_img, true); // Use progressive JPGs
$white = imagecolorallocate($new_img, 255, 255, 255);
imagefilledrectangle($new_img, 0, 0, $img_width, $img_height, $white);
imagecopyresampled($new_img, $img, $x, $y, 0, 0, $new_width, $new_height, $width, $height);
header("content-type: image/jpg");
imagejpeg($new_img, NULL, 100);
imagedestroy($img);
imagedestroy($new_img);
die;
?>