欢迎访问宙启技术站
智能推送

PHP图像处理函数及示例应用

发布时间:2023-07-02 12:57:34

PHP提供了丰富的图像处理函数,可以对图像进行裁剪、缩放、旋转、水印等操作。本文将介绍一些常用的图像处理函数及其示例应用。

1. imagecreatefromjpeg():将JPEG格式的图像文件创建为图像资源。示例代码如下:

$source_img = 'source.jpg';
$im = imagecreatefromjpeg($source_img);

2. imagecreatetruecolor():创建一个真彩色图像资源。示例代码如下:

$width = 500;
$height = 300;
$im = imagecreatetruecolor($width, $height);

3. imagecopyresampled():裁剪或缩放图像。示例代码如下:

$source_img = 'source.jpg';
$dest_img = 'dest.jpg';
$source = imagecreatefromjpeg($source_img);
$dest = imagecreatetruecolor($width, $height);
imagecopyresampled($dest, $source, 0, 0, $src_x, $src_y, $width, $height, $src_width, $src_height);
imagejpeg($dest, $dest_img);
imagedestroy($source);
imagedestroy($dest);

4. imagerotate():旋转图像。示例代码如下:

$source_img = 'source.jpg';
$dest_img = 'dest.jpg';
$angle = 45;
$source = imagecreatefromjpeg($source_img);
$dest = imagerotate($source, $angle, 0);
imagejpeg($dest, $dest_img);
imagedestroy($source);
imagedestroy($dest);

5. imagecopy():将一张图像复制到另一张图像上。示例代码如下:

$source_img = 'source.jpg';
$dest_img = 'dest.jpg';
$source = imagecreatefromjpeg($source_img);
$dest = imagecreatefromjpeg($dest_img);
imagecopy($dest, $source, $dest_x, $dest_y, $src_x, $src_y, $width, $height);
imagejpeg($dest, $dest_img);
imagedestroy($source);
imagedestroy($dest);

6. imagestring():在图像上绘制字符串。示例代码如下:

$im = imagecreate(200, 50);
$bg_color = imagecolorallocate($im, 255, 255, 255);
$text_color = imagecolorallocate($im, 0, 0, 0);
$text = "Hello, world!";
imagestring($im, 5, 10, 10, $text, $text_color);
imagejpeg($im);
imagedestroy($im);

7. imagecopymerge():将一张图像合并到另一张图像上,并设置合并的透明度。示例代码如下:

$source_img = 'watermark.png';
$dest_img = 'source.jpg';
$source = imagecreatefrompng($source_img);
$dest = imagecreatefromjpeg($dest_img);
imagecopymerge($dest, $source, $dest_x, $dest_y, 0, 0, $width, $height, $alpha);
imagejpeg($dest, $dest_img);
imagedestroy($source);
imagedestroy($dest);

以上是一些常用的PHP图像处理函数及其示例应用。利用这些函数,我们可以实现各种图像处理功能,为网站、应用程序添加图像处理的特效和功能。