PHP GD支持是PHP编程中非常重要的一个部分,图像处理是Web开发中常用的一种技术,PHP内置的GD扩展可以帮助我们轻松生成、处理和显示图片。本文将着重介绍PHP GD扩展的主要功能和使用方法。
1. 图片生成
//新建一个宽度为200,高度为100的画布 $img = imagecreatetruecolor(200, 100); //给画布设置背景颜色 $bgcolor = imagecolorallocate($img, 255, 255, 255); imagefill($img, 0, 0, $bgcolor); //在画布上面写入文字 $text = 'Hello World'; $font = 'fonts/arial.ttf';//字体文件路径 $fontsize = 20; $fontcolor = imagecolorallocate($img, 0, 0, 0); imagettftext($img, $fontsize, 0, 50, 50, $fontcolor, $font, $text); //输出图片 header('Content-Type:image/png'); imagepng($img); imagedestroy($img);
2. 图片处理
2.1 重新调整大小
$img = imagecreatefromjpeg('images/test.jpg'); $new_img = imagecreatetruecolor(200, 200); imagecopyresampled($new_img, $img, 0, 0, 0, 0, 200, 200, imagesx($img), imagesy($img)); header('Content-Type:image/jpeg'); imagejpeg($new_img); imagedestroy($img); imagedestroy($new_img);
2.2 添加水印
$img = imagecreatefromjpeg('images/test.jpg'); $watermark = imagecreatefrompng('images/watermark.png');//水印图片 imagecopy($img, $watermark, imagesx($img)-imagesx($watermark), imagesy($img)-imagesy($watermark), 0, 0, imagesx($watermark), imagesy($watermark)); header('Content-Type:image/jpeg'); imagejpeg($img); imagedestroy($img); imagedestroy($watermark);
3. 图片输出
$img = imagecreatefromjpeg('images/test.jpg'); header('Content-Type:image/png'); imagepng($img); imagedestroy($img);
4. 其它常用功能
4.1 获取图片尺寸
$img = imagecreatefromjpeg('images/test.jpg'); echo 'width:'.imagesx($img).'
'; echo 'height:'.imagesy($img).'
'; imagedestroy($img);
4.2 获取像素颜色值
$img = imagecreatefromjpeg('images/test.jpg'); $rgb = imagecolorat($img, 100, 100); $colors = imagecolorsforindex($img, $rgb); echo 'red:'.$colors['red'].'
'; echo 'green:'.$colors['green'].'
'; echo 'blue:'.$colors['blue'].'
'; imagedestroy($img);
总结:
在Web开发中,图像处理是不可缺少的一种技术。PHP GD扩展提供了一系列强大的图像处理能力,可以帮助我们轻松生成、处理和显示图片。通过本文的介绍,相信读者们可以轻松应对一些常见的图像处理需求。