PHP では JPEG 画像のサイズを変更することもできます。

藏色散人
リリース: 2023-04-10 16:20:01
オリジナル
3816 人が閲覧しました

前回の記事「なぜPHPの===演算子は==より速いのか?」 >>PHP の === 演算子が == よりも速い理由を紹介しました。興味のある友達はそれについて学ぶことができます~

この記事のテーマは、PHP で JPEG を調整する方法を説明することです。 PHP イメージのサイズ。

Web サイト開発の過程で、カバー画像、サムネイル、情報画像などの画像を拡大縮小する機能を実装する必要がある場合があります。画像のサイズはニーズに応じて指定する必要がありますが、次のように HTML を使用して画像サイズを変更できることも知っておく必要があります。

<img src="001.jpg"    style="max-width:90%" width="100" alt="图片尺寸">
ログイン後にコピー

もちろん、この記事の焦点は次のとおりです。 PHP で画像サイズを調整するには、コードのすぐ下を見てみましょう:

PHP コードは次のとおりです:

<?php

$filename = &#39;001.jpg&#39;;

// 最大宽度和高度
$width = 100;
$height = 100;

// 文件类型
header(&#39;Content-Type: image/jpg&#39;);

// 新尺寸
list($width_orig, $height_orig) = getimagesize($filename);

$ratio_orig = $width_orig/$height_orig;

if ($width/$height > $ratio_orig) {
    $width = $height*$ratio_orig;
} else {
    $height = $width/$ratio_orig;
}

// 重采样的图像
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($filename);

imagecopyresampled($image_p, $image, 0, 0, 0, 0,
    $width, $height, $width_orig, $height_orig);

// 输出图像
imagejpeg($image_p, null, 100);
ログイン後にコピー

効果は次のとおりです:

PHP では JPEG 画像のサイズを変更することもできます。

ここでは、重要な関数 imagecopyresampled():

(この関数はバージョン PHP 4 >= 4.0 に適用されます。 6、PHP 5、PHP 7、PHP 8)

imagecopyresampled — 画像の一部をリサンプリングしてコピーし、サイズを変更します;

構文:

imagecopyresampled(
    resource $dst_image,
    resource $src_image,
    int $dst_x,
    int $dst_y,
    int $src_x,
    int $src_y,
    int $dst_w,
    int $dst_h,
    int $src_w,
    int $src_h
): bool
ログイン後にコピー

パラメータはそれぞれ次を表します:

dst_image:目标图象资源。
src_image:源图象资源。
dst_x:目标 X 坐标点。
dst_y:目标 Y 坐标点。
src_x:源的 X 坐标点。
src_y:源的 Y 坐标点。
dst_w:目标宽度。
dst_h:目标高度。
src_w:源图象的宽度。
src_h:源图象的高度。
ログイン後にコピー

imagecopyresampled() 画像内の正方形をコピーします 領域は別の画像にコピーされ、ピクセル値を滑らかに補間するため、特に、優れた画像を維持しながら画像のサイズを縮小します鋭さ。

In other words, imagecopyresampled() will take a rectangular area from src_image of width src_w and height src_h at position (src_x,src_y) and place it in a rectangular area of dst_image of width dst_w and height dst_h at position (dst_x,dst_y).
ログイン後にコピー

ソースとターゲットの幅と高さが異なる場合、対応する画像の縮小と拡大が発生します。座標は左上隅を指します。この関数は、同じイメージ内の領域をコピーするために使用できます (dst_image と src_image が同じ場合) が、領域が重なっている場合の結果は予測できません。

最後に、最新かつ最も包括的な「PHP ビデオ チュートリアル 」をお勧めします~ぜひ学んでください!

以上がPHP では JPEG 画像のサイズを変更することもできます。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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