PHP を使用して画像を切り取ったりズームしたりする方法
はじめに: Web 開発では、多くの場合、画像を切り取ったりズームしたりする必要があります。人気のあるサーバーサイド言語として、PHP は画像に対するさまざまな操作を容易にする豊富な画像処理関数とライブラリを提供します。この記事では、PHP を使用して画像をトリミングおよびズームする方法を紹介し、対応するコード例を示します。
1. 画像のトリミング
画像のトリミングとは、元の画像から必要な部分を切り出すことを意味します。 PHP では、GD ライブラリが提供する関数を使用して画像のトリミングを実現できます。
ステップ 1: 元の画像を開く
まず、元の画像を開いて、imagecreatefromjpeg()
やimagecreatefrompng( などの関数を使用して画像を作成する必要があります。 )
画像リソース。
$sourceImage = imagecreatefromjpeg('original.jpg');
ステップ 2: ターゲット画像を作成する
次に、切り抜いた結果としてターゲット画像を作成する必要があります。imagecreatetruecolor()
関数を使用すると、元の画像と同じサイズの画像リソースを作成できます。
$width = imagesx($sourceImage); $height = imagesy($sourceImage); $targetImage = imagecreatetruecolor($width, $height);
ステップ 3: 画像をトリミングする
関数を使用しますimagecopy()
元の画像の一部をターゲット画像にコピーします。元の画像リソース、ターゲット画像リソース、ターゲット画像の開始座標、および元の画像の開始座標を渡す必要があります。以下は元画像から中央部分をキャプチャした例です。
$targetX = 0; $targetY = 0; $sourceX = $width / 4; $sourceY = $height / 4; $targetWidth = $width / 2; $targetHeight = $height / 2; $sourceWidth = $width / 2; $sourceHeight = $height / 2; imagecopy($targetImage, $sourceImage, $targetX, $targetY, $sourceX, $sourceY, $targetWidth, $targetHeight);
ステップ 4: 結果の画像を保存する
最後に、トリミングされた結果をファイルに保存する必要があります。imagejpeg()
関数を使用して、対象の画像を JPEG 形式のファイルとして保存します。
imagejpeg($targetImage, 'cropped.jpg');
この時点で、画像のトリミング操作は完了しました。
2. 画像の拡大縮小
画像の拡大縮小とは、画像のサイズを特定の比率に従って変更することを意味します。 PHP では、GD ライブラリによって提供される関数を使用して、画像のスケーリングを実現できます。
ステップ 1: 元の画像を開く
同様に、最初にimagecreatefromjpeg()
やimagecreatefrompng()# などの関数を使用して元の画像を開く必要があります。 ##。
$sourceImage = imagecreatefromjpeg('original.jpg');
$scale = 0.5; // 缩放比例,此处为缩小一半 $targetWidth = imagesx($sourceImage) * $scale; $targetHeight = imagesy($sourceImage) * $scale;
imagecreatetruecolor()関数を使用してターゲット イメージのサイズを指定する必要があります。
$targetImage = imagecreatetruecolor($targetWidth, $targetHeight);
imagecopyresampled()を使用して、指定されたサイズに従って元の画像をターゲット画像に拡大縮小します。
imagecopyresampled($targetImage, $sourceImage, 0, 0, 0, 0, $targetWidth, $targetHeight, imagesx($sourceImage), imagesy($sourceImage));
imagejpeg()や
imagepng()などの関数を使用して、ターゲット画像を保存します。ファイルとして。
imagejpeg($targetImage, 'resized.jpg');
以上がPHP を使用して画像をトリミングおよびサイズ変更する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。