45

画像ベースのウェブサイトを開発しようとしています。ページの読み込み速度を上げるための最適な画像タイプと最適な圧縮方法について、私は本当に混乱しています。画像サイズを圧縮する最良の方法を教えてください。

4

4 に答える 4

109

コーディング自体を使用してサイズを縮小したい場合は、phpでこのコードに従うことができます。

<?php 
function compress($source, $destination, $quality) {

    $info = getimagesize($source);

    if ($info['mime'] == 'image/jpeg') 
        $image = imagecreatefromjpeg($source);

    elseif ($info['mime'] == 'image/gif') 
        $image = imagecreatefromgif($source);

    elseif ($info['mime'] == 'image/png') 
        $image = imagecreatefrompng($source);

    imagejpeg($image, $destination, $quality);

    return $destination;
}

$source_img = 'source.jpg';
$destination_img = 'destination .jpg';

$d = compress($source_img, $destination_img, 90);
?>

$d = compress($source_img, $destination_img, 90);

$source_imgこれは、ソース画像(つまり、 )、宛先画像($destination_img)、および圧縮にかかる画像の品質(つまり、90)を渡す単なるphp関数です。

$info = getimagesize($source);

このgetimagesize()関数は、任意の画像ファイルのサイズを検索し、ファイルタイプとともに寸法を返すために使用されます。

于 2013-10-16T13:34:20.600 に答える
12

私は行きjpegます。画像サイズの縮小に関するこの投稿を読み、テクニックを決定した後、 ImageMagickを使用してください

お役に立てれば

于 2012-07-10T17:26:37.493 に答える
8

サイズを変更してからimagejpeg()を使用できます

imagejpeg()の品質として100を渡さないでください。90を超えるものは一般的にやり過ぎであり、JPEGが大きくなります。サムネイルの場合は、75を試して、品質とサイズのトレードオフが許容できるまで下に向かって作業します。

imagejpeg($tn, $save, 75);
于 2012-07-10T17:26:11.607 に答える
4

さて、私はあなたにとって何か面白いものがあると思います... https://github.com/whizzzkid/phpimageresize。まったく同じ目的で書きました。高度にカスタマイズ可能で、素晴らしい方法でそれを行います。

于 2013-01-05T22:41:29.230 に答える