ホームページ  >  記事  >  バックエンド開発  >  PHP_PHP チュートリアルで JPEG 画像をプログレッシブ JPEG に変換する方法

PHP_PHP チュートリアルで JPEG 画像をプログレッシブ JPEG に変換する方法

WBOY
WBOYオリジナル
2016-07-13 10:26:15827ブラウズ

JPEGファイル形式には2つの保存方法があります。ベースライン JPEG とプログレッシブ JPEG です。

2 つの形式はサイズと画像データが同じで、拡張子も同じです。唯一の違いは表示方法です。

ベースライン JPEG

このタイプの JPEG ファイル保存方法は、上から下にスキャンし、JPEG ファイルの各行を順番に保存します。このファイルを開いて内容を表示すると、格納されている順に上から下へ1行ずつ表示され、すべてのデータが読み込まれるまで画像全体の表示が完了します。ファイルが大きい場合、またはネットワークのダウンロード速度が遅い場合は、画像が 1 行ずつロードされるため、この形式の JPEG には利点がありません。そのため、一般的にはプログレッシブ JPEG を使用することをお勧めします。

プログレッシブJPEG

1 パスでスキャンするベースラインとは異なり、プログレッシブ JPEG ファイルには複数のスキャンが含まれており、これらのスキャンは JPEG ファイルに順番に保存されます。ファイルを開くプロセスでは、最初に画像全体のぼやけた輪郭が表示されます。スキャンの回数が増えるにつれて、画像はより鮮明になります。この形式の主な利点は、ネットワークが遅い場合でも、画像の概要を確認して、読み込まれている画像が何であるかを知ることができることです。一部の Web サイトで大きな画像を開いたときに、このテクニックに気づくでしょう。

インターネットの速度がカタツムリと同じであれば、その効果を確認できるはずです。実際、qzone や Weibo などの大きな Web サイトでそのような効果がよく見られます。

PHP コードはプログレッシブ jpg に変換することもできます。

コードをコピーします コードは次のとおりです:

$im = imagecreatefromjpeg('file.jpg');
// インターレースを設定する インターレース ビット フラグが設定されており、画像が JPEG 形式を使用している場合、画像はプログレッシブ JPEG として作成されます。 PHPマニュアル
imageinterlace($im, 1);
imagejpeg($im, './outfile.jpg', 80);
imagedestroy($im);

?>

画像がプログレッシブ形式かベースライン形式かを確認するにはどうすればよいですか?

私が現在知っていることは、ImageMagick ソフトウェアが提供するidentityコマンドを使用して画像リソースを表示することです


コードをコピーします コードは次のとおりです:
識別 -verbose outfile.jpg

インターレースの属性が表示される場合: JPEG はプログレッシブ画像です。


http://www.bkjia.com/PHPjc/824749.htmlwww.bkjia.com本当http://www.bkjia.com/PHPjc/824749.html技術記事 JPEG ファイル形式を保存するには 2 つの方法があります。それらはベースライン JPEG とプログレッシブ JPEG であり、両方の形式は同じサイズと画像データを持ち、拡張子も同じです。唯一の違いは...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。