PHP图像处理函数大全(推荐收藏)
介绍
在WEB开发过程中,图像处理是一个常见的需求。PHP提供了很多图像处理相关的函数,可以用来对图像进行操作和处理。本文收集了常用的PHP图像处理函数,推荐收藏。
图像的基本操作
图像读取和保存
图像读取使用 imagecreatefrom
系列函数,包括 imagecreatefrombmp
、imagecreatefromgif
、imagecreatefromjpeg
、imagecreatefrompng
、imagecreatefromwbmp
、imagecreatefromwebp
。图像保存使用 image
系列函数,包括 imagebmp
、imagegif
、imagejpeg
、imagepng
、imagewbmp
、imagewebp
。
示例:
// 读取PNG图像
$img = imagecreatefrompng("image.png");
// 保存为JPEG格式图像
imagejpeg($img, "image.jpg");
图像大小调整
图像缩放使用 imagescale
函数,可以按比例或指定尺寸缩放。图像裁剪使用 imagecrop
函数,可以裁剪指定区域的图像。图像旋转使用 imagerotate
函数,可以按照角度进行旋转。
示例:
// 按比例缩放图像
$img = imagecreatefrompng("image.png");
$newImg = imagescale($img, 200, -1);
// 裁剪图像
$croppedImg = imagecrop($img, ['x' => 100, 'y' => 100, 'width' => 200, 'height' => 200]);
// 旋转图像
$rotatedImg = imagerotate($img, 45, 0);
图像添加水印
图像添加水印使用 imagestring
和 imagecopy
函数。可以将文本、图片作为水印添加到指定位置。
示例:
// 为图像添加文本水印
$img = imagecreatefrompng("image.png");
$color = imagecolorallocate($img, 255, 255, 255);
imagestring($img, 5, 10, 10, "www.example.com", $color);
// 为图像添加图片水印
$logo = imagecreatefrompng("logo.png");
imagecopy($img, $logo, 10, 10, 0, 0, imagesx($logo), imagesy($logo));
图像处理进阶
图像滤镜
图像滤镜使用 imagefilter
函数,可以对图像进行模糊、锐化、反色等处理。滤镜常量包括 IMG_FILTER_GRAYSCALE
、IMG_FILTER_EMBOSS
、IMG_FILTER_NEGATE
等。
示例:
// 对图像进行模糊处理
$img = imagecreatefrompng("image.png");
imagefilter($img, IMG_FILTER_GAUSSIAN_BLUR);
// 对图像进行反色处理
$img = imagecreatefrompng("image.png");
imagefilter($img, IMG_FILTER_NEGATE);
图像文字识别
图像文字识别使用 tesseract-ocr
库或 OCRopus
库,可以将图像中的文字识别出来。需要先安装相关库和扩展。
示例:
// 使用tesseract-ocr库进行文字识别
$img = imagecreatefrompng("image.png");
$cmd = "tesseract image.png result -l eng";
exec($cmd);
$text = file_get_contents("result.txt");
// 使用OCRopus库进行文字识别
$img = imagecreatefrompng("image.png");
$ocr = new \TesseractOCR("image.png");
$text = $ocr->run();
结语
PHP提供了很多图像处理相关的函数,可以用来对图像进行操作和处理。本文介绍了常用的图像处理函数及其用法。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:php图像处理函数大全(推荐收藏) - Python技术站