PHP画像処理例画像スケーリング

PHPz
リリース: 2023-06-20 22:46:01
オリジナル
1904 人が閲覧しました

モバイル デバイスと Web サイトの普及に伴い、画像処理は Web サイト開発に不可欠な部分になりました。 Web サイトで画像を使用する場合、多くの場合、画像を拡大縮小する必要があるため、画像の拡大縮小は画像処理の最も基本的な機能の 1 つです。 PHP では、GD ライブラリを使用して画像のスケーリングを実装することができますが、以下では、PHP で画像のスケーリングを実行する方法を、具体的な例を通して紹介します。

まず、PHP の GD ライブラリを使用して画像を開く必要があります。これは、PHP の組み込み関数 imagecreatefromjpeg() または imagecreatefrompng() を使用して実現できます。この例では、例として jpeg 形式の画像を使用して説明します。次のコードは、「image.jpg」という名前の画像を開きます。

$image = imagecreatefromjpeg('image.jpg');
ログイン後にコピー

次に、imagecreatetruecolor() 関数を使用して、希望するスケーリングに従ってサイズ変更される空の画像を作成します。比率。この例では、元の画像を半分に縮小するので、新しい画像のサイズは元の画像の半分のサイズになるはずです。

$newWidth = imagesx($image) / 2;
$newHeight = imagesy($image) / 2;
$newImage = imagecreatetruecolor($newWidth, $newHeight);
ログイン後にコピー

次に、imagecopyresampled() 関数を使用して縮小する必要があります。元の画像を新しい画像の中央に移動します。この関数は、ある画像を別の画像にコピーし、新しい画像を希望のサイズと比率でサンプリングします。次のコードは、元の画像を新しい画像にコピーし、半分に縮小します。

imagecopyresampled($newImage, $image, 0, 0, 0, 0, $newWidth, $newHeight, imagesx($image), imagesy($image));
ログイン後にコピー

上記のコードでは、元の画像を新しい画像にコピーし、サイズ、位置、および元の画像を指定します。新しい画像、画像のサイズと位置。最後に、imagejpeg() 関数を使用して、新しい画像をファイルに保存する必要があります。

imagejpeg($newImage, 'newImage.jpg');
ログイン後にコピー

これで、PHP を使用して画像のスケーリングを正常に実装できました。完全なコードは次のとおりです:

// 打开原图
$image = imagecreatefromjpeg('image.jpg');

// 根据缩放比例计算新图大小
$newWidth = imagesx($image) / 2;
$newHeight = imagesy($image) / 2;

// 创建新图
$newImage = imagecreatetruecolor($newWidth, $newHeight);

// 缩小原图到新图中
imagecopyresampled($newImage, $image, 0, 0, 0, 0, $newWidth, $newHeight, imagesx($image), imagesy($image));

// 保存新图到文件
imagejpeg($newImage, 'newImage.jpg');
ログイン後にコピー

概要:

この記事では、PHP の GD ライブラリを使用して画像を拡大縮小する方法を紹介しました。画像を扱うことが多い Web サイトにとって、画像のスケーリングは基本的な機能であり、これにより、Web サイトの表示効果をさまざまなデバイスでより一貫性のあるものにすることができます。したがって、画像処理の方法を学ぶことは、すべての PHP 開発者にとって必要なスキルの 1 つです。

以上がPHP画像処理例画像スケーリングの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート