PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのimagegammacorrect()関数でGD画像にガンマ補正を適用する方法

PHPにおけるガンマ補正とは

imagegammacorrect()は、PHPに組み込まれている関数の一つで、指定したGraphics Draw(GD)画像に対してガンマ補正を適用するために使用されます。画像の明るさやコントラストを調整したい場合に便利な関数です。

構文

bool imagegammacorrect(resource $image, float $inputgamma, float $outputgamma)

パラメータ

imagegammacorrect()は、$image、$inputgamma、$outputgammaという3つのパラメータを受け取ります。

  • $image − 処理対象となる画像を指定します。

  • $inputgamma − 入力側のガンマ値を指定します。

  • $outputgamma − 出力側のガンマ値を指定します。

戻り値

imagegammacorrect()は、処理が成功した場合はtrueを、失敗した場合はfalseを返します。

使用例

<?php
   // ローカルドライブのフォルダから画像を読み込む
   $img = imagecreatefrompng('C:\xampp\htdocs\Images\img58.png');

   // imagegammacorrect()を使って画像のガンマを変更する
   imagegammacorrect($img, 15, 1.5);

   // ブラウザへ画像を出力する
   header('Content-Type: image/png');
   imagepng($img);
   imagedestroy($img);
?>

実行結果

imagegammacorrect()適用前の入力画像

PHPのimagegammacorrect()関数でGD画像にガンマ補正を適用する方法

imagegammacorrect()適用後の出力画像

PHPのimagegammacorrect()関数でGD画像にガンマ補正を適用する方法

解説

この例では、まずimagecreatefrompng()関数を使ってローカルドライブからPNG画像を読み込みました。なお、ローカルファイルのパスだけでなく、画像のURLを指定することも可能です。その後、入力ガンマ値と出力ガンマ値をそれぞれ15と1.5としてimagegammacorrect()を適用しています。実行結果を見ると、処理前と処理後の画像の明るさに違いがあることが確認できます。最後に、imagedestroy()でメモリ上の画像リソースを解放し、サーバーリソースの無駄遣いを防いでいる点にも注目してください。

  1. PHPのimagecropauto()関数で画像を自動的に切り抜く方法を徹底解説

    imagecropauto()は、PHPに標準で組み込まれている関数の一つで、用意された複数のモードの中から選択して、画像を自動的に切り抜き(クロップ)することができます。構文resource imagecropauto(resource $image, int $mode, float $threshold, int $color)パラメータimagecropauto()は、$image、$mode、$threshold、$color の4つのパラメータを受け取ります。$image − 切り抜き対象となる画像リソースを指定します。$mode − 省略可能なパラメータで、切り抜きモードに対応す

  2. Python tkinterのキャンバスにPNG画像を表示する方法をわかりやすく解説

    Pythonのtkinterで画像を扱うには、PIL(Pillow)ライブラリを利用するのが一般的です。Pillowには、JPEGやPNGなどさまざまな形式の画像を読み込み・操作するための便利な関数が数多く用意されています。まだインストールしていない場合は、pip install Pillowで導入できます。キャンバス(Canvas)ウィジェットに画像を表示するには、create_image(x, y, image, **options)コンストラクタを使用します。このコンストラクタに読み込んだ画像オブジェクトを渡すことで、指定した座標を基準にキャンバス上へ画像が描画されます。サンプルコード#