PHP如何实现图像等比例缩放?PHP实现图片缩放实例代码
- 2022年11月24日
- 1,579 次
PHP能否实现图像图片的等比例缩放功能?答案是可以的,那么PHP是如何实现图像缩放的,主要是使用了PHP的imagecopyresampled()函数,本文将详细介绍imagecopyresampled()函数如何使用,PHP实现图像缩放的思路以及用一个PHP实例来实现图片缩放。
一、imagecopyresampled()函数使用方法
1、imagecopyresampled()函数语法格式:
imagecopyresampled(
resource $dst_image,
resource $src_image,
int $dst_x,
int $dst_y,
int $src_x,
int $src_y,
int $dst_w,
int $dst_h,
int $src_w,
int $src_h
): bool
2、imagecopyresampled()函数作用
重采样拷贝部分图像并调整大小。
3、imagecopyresampled()函数参数说明
(1)、$dst_image:目标图象资源;
(2)、$src_image:源图象资源;
(3)、$dst_x:目标 X 坐标点;
(4)、$dst_y:目标 Y 坐标点;
(5)、$src_x:源的 X 坐标点;
(6)、$src_y:源的 Y 坐标点;
(7)、dst_w:目标宽度;
(8)、$dst_h:目标高度;
(9)、$src_w:源图象的宽度;
(10)、$src_h:源图象的高度;
(11)、imagecopyresampled()函数的返回值是一个布尔值,返回值成功的时候会返回true,失败则返回false。
二、PHP实现图像缩放的思路
根据imagecopyresampled()函数的使用方法,我们需要获取到原图像的宽度和高度,然后再使用PHP运算将原图片的宽度和高度等比例缩放,获取到新图片的高度和宽度,然后再将具体的参数传递到imagecopyresampled()函数中,最重要的PHP函数有:getimagesize()、imagecopyresampled()。
三、PHP实现图片缩放实例代码
<?php
header('content-type:image/jpeg');
//打开目标来源图片;
$pic= imagecreatefromjpeg('2.jpg');
//设置图片缩放比例为20%;
$scale = 0.2;
//使用list()和getimagesize()函数获取到图片的宽和高
list($width, $height) = getimagesize('2.jpg');
//得到新图片的宽和高:原图片的宽和高缩放50%;
$new_width = $width*$scale;
$new_height = $height*$scale;
//创建新图片的画布;
$new_pic = imagecreatetruecolor($new_width,$new_height);
//将原图片的宽高按照缩放后的尺寸复制到新图片中
imagecopyresampled($new_pic,$pic,0,0,0,0,$new_width,$new_height,$width,$height);
//保存新图片到本地中
imagejpeg($new_pic);
//输出图片
echo '<img src=\'$new_pic\'/>';
//销毁图片资源,释放内存;
imagedestroy($new_pic);
?>
<?php
header('content-type:image/jpeg');
//打开目标来源图片;
$pic= imagecreatefromjpeg('2.jpg');
//设置图片缩放比例为20%;
$scale = 0.2;
//使用list()和getimagesize()函数获取到图片的宽和高
list($width, $height) = getimagesize('2.jpg');
//得到新图片的宽和高:原图片的宽和高缩放50%;
$new_width = $width*$scale;
$new_height = $height*$scale;
//创建新图片的画布;
$new_pic = imagecreatetruecolor($new_width,$new_height);
//将原图片的宽高按照缩放后的尺寸复制到新图片中
imagecopyresampled($new_pic,$pic,0,0,0,0,$new_width,$new_height,$width,$height);
//保存新图片到本地中
imagejpeg($new_pic);
//输出图片
echo '<img src=\'$new_pic\'/>';
//销毁图片资源,释放内存;
imagedestroy($new_pic);
?>原图片的尺寸截图:
执行后图片尺寸:
可以对比图像等比例缩放前后图片尺寸的变化。
以上就是使用PHP实现图像图片等比例缩放的全文,本文主要从imagecopyresampled()函数使用方法、PHP实现图像缩放的思路及PHP实现图片缩放实例代码记载了PHP实现图像图片的缩放功能。
若非作者标注皆为李涛自留地原创文章,转载或复制请以超链接形式并注明出处。
- PHP自定义函数之内部函数写法、调用及注意要点 2022-10-06
- ZblogPhp主题制作五侧边栏设置 ZblogPhp侧边栏主题制作 2022-10-15
- PHP自定义函数静态变量怎么用?PHP自定义函数静态变量特征 2022-10-08
- PHP子类继承父类学习笔记 PHP子类继承父类实例代码 2022-12-05
- PHP析构方法如何使用 PHP析构方法使用实例代码 2022-12-04
- PHP合并数组函数array_combine()与array_merge()用法与区别 2022-10-27
