ホームページ  >  記事  >  バックエンド開発  >  PHPでのGDライブラリ操作ガイド

PHPでのGDライブラリ操作ガイド

王林
王林オリジナル
2023-05-20 14:40:403645ブラウズ

1. GD ライブラリとは何ですか?

GD ライブラリは、さまざまな画像形式を作成および処理するためのライブラリ関数のセットで、PHP で最もよく使用される画像処理ライブラリの 1 つです。

2. GD ライブラリをインストールします

CentOS/RedHat に GD ライブラリをインストールします

1. PHP の GD 拡張ライブラリをインストールします

yum install php -gd

2. Web サーバーを再起動します

service httpd restart

3. PHP でサポートされている GD ライブラリのバージョンを確認します

php -i | grep -i gd

Ubuntu/Debian に GD ライブラリをインストールします

1. php5-gd モジュールをインストールします

apt-get update && apt-get install php5-gd

2. Web サーバーを再起動します

service apache2 restart

3. PHP でサポートされている GD ライブラリのバージョンを確認します

php -i | grep -i gd

三、GD ライブラリの基本操作

1. 画像の作成

1) 200X200 ピクセルの黒画像を作成します
$image = imagecreate(200,200);
$black = imagecolorallocate( $image,0,0,0);
imagefill($image,0,0,$black);

2) 画像にテキストを追加します
$white = imagecolorallocate($image, 255,255,255);
$text = 'こんにちは、GD!';
imagettftext($image,20,0,70,100,$white,'arial.ttf',$text);

3 ) 画像をファイルに保存します
imagepng($image,'test.png');

4) メモリを解放します
imagedestroy($image);

2. 画像処理

1) 画像の拡大縮小
$src_image = imagecreatefrompng('test.png');
$src_width = imagex($src_image);
$src_height = imagey($src_image);
$new_width = $src_width * 0.5;
$new_height = $src_height * 0.5;
$new_image = imagecreatetruecolor($new_width,$new_height);
imagecopyresampled($new_image ,$src_image,0,0, 0,0,$new_width,$new_height,$src_width,$src_height);
imagepng($new_image,'test-resize.png');

2)境界線を追加します
$border_color = imagecolorallocate($new_image,128,128,128);
imagerectangle($new_image,0,0,$new_width-1,$new_height-1,$border_color);
imagepng($new_image, 'test-bordered.png') ;

3) トリミングされた画像
$cropped_image = imagecrop($new_image,['x'=>40,'y'=>40,'width' =>100,'高さ' =>100]);
imagepng($cropped_image,'test-cropped.png');

##4) ぼやけた画像

$blurred_image = imagefilter($ new_image,IMG_FILTER_GAUSSIAN_BLUR);
imagepng($blurred_image,'test-blurred.png');

3. 画像要素の操作

1) ピクセルの RGB 値を取得します

$ピクセル = imagecolorat($new_image,50 ,50);
$red = ($pixel >> 16) & 0xFF;
$green = ($pixel >> 8) & 0xFF;
$blue = $pixel & 0xFF ;

2) ピクセルの RGB 値を変更します

$new_color = imagecolorallocate($new_image,255,0,0);
imagesetpixel($new_image,50, 50,$new_color);
imagepng($new_image,'test-pixel.png');

3) 画像を塗りつぶす

$fill_color = imagecolorallocate($new_image,0,255,0);
imagefill($new_image,0, 0,$fill_color);
imagepng($new_image,'test-filled.png');

4. GD ライブラリの高度な操作

# #1. ウォーターマーク処理

1) テキストウォーターマークを追加

$watermark_text = 'COPYRIGHT';

$font_size = 20;
$font_color = imagecolorallocate($new_image,0,0,0 );
imagettftext($new_image ,$font_size,0,10,20,$font_color,'arial.ttf',$watermark_text);
imagepng($new_image,'test-watermark.png');

2) 画像ウォーターマークを追加

$watermark_image = imagecreatefrompng('watermark.png');

$watermark_width = imagex($watermark_image);
$watermark_height = imagey($watermark_image);
$pos_x = ($new_width - $watermark_width) / 2;
$pos_y = ($new_height - $watermark_height) / 2;
imagecopy($new_image,$watermark_image,$pos_x,$pos_y,0, 0,$watermark_width,$watermark_height);
imagepng($new_image,'test-watermark.png');

2. 描画操作

1) 直線を描画します

$line_color = imagecolorallocate($new_image,0, 0,255);

imageline($new_image,0,0,$new_width,$new_height,$line_color);
imagepng($new_image,'test-line.png ');

2) 長方形を描画します

$rect_color = imagecolorallocate($new_image,0,255,0);

imagerectangle($new_image,20,20,$new_width-20,$new_height- 20,$rect_color);
imagepng($ new_image,'test-rectangle.png');

3) 円を描く

$circle_color = imagecolorallocate($new_image,255,0,0 );

$circle_center_x = $new_width/2 ;
$circle_center_y = $new_height/2;
$circle_diameter = $new_height * 0.8;
$circle_radius = $circle_diameter / 2;
imageellipse ($new_image,$circle_center_x,$circle_center_y,$circle_diameter ,$circle_diameter,$circle_color);
imagepng($new_image,'test-circle.png');

5.概要

この記事では、画像作成、画像処理、画像要素の操作、透かし処理、描画操作など、GDライブラリ操作の基本操作と応用操作を紹介します。 GD ライブラリは、PHP 開発において最も実用的な画像処理ツールの 1 つであり、画像検証コードの作成、QR コード、チャート、ポスターなどの生成に使用できます。 GD ライブラリを使用するスキルを習得すると、PHP 開発者がビジネス ニーズをより効率的に完了するのに役立ちます。

以上がPHPでのGDライブラリ操作ガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。