简单php 图片比例缩放代码

作者:袖梨 2022-06-24

我利用了getimagesize来获取原图片的大小然后再x0.5就是把图片/5哦。

array getimagesize ( string $filename [, array &$imageinfo ] )
getimagesize() 函数将测定任何 gif,jpg,png,swf,swc,ps教程d,tiff,bmp,iff,jp2,jpx,jb2,jpc,xbm 或 wbmp 图像文件的大小并返回图像的尺寸以及文件类型和一个可以用于普通 html 文件中 标记中的 height/width 文本字符串。
如果不能访问 filename 指定的图像或者其不是有效的图像,getimagesize() 将返回 false 并产生一条 e_warning 级的错误

*/
//定义一个文件
$filename='1.jpg';
$percent=0.5;
//发送头部文件
header('content-type: image/jpeg');
//获取图像的大小
list($width,$height)=getimagesize($filename);
//定义新的大小
$new_width=$width * $percent;
$new_height=$height * $percent;
$image_p=imagecreatetruecolor($new_width, $new_height);
/*
: int imagecreate(int x_size, int y_size);

返回值: 整数

内容说明


本函数用来建立一张全空的图形。参数 x_size、y_size 为图形的尺寸,单位为像素 (pixel)。

*/
$image=imagecreatefromjpeg($filename);

/*
resource imagecreatefromjpeg ( string filename )   imagecreatefromjpeg() 返回一图像标识符,代表了从给定的文件名取得的图像。   imagecreatefromjpeg() 在失败时返回一个空字符串,并且输出一条错误信息,不幸地在浏览器中显示为断链接。为减轻调试工作下面的例子会产生一个错误 jpeg:
*/
imagecopyresampled($image_p,$image,0,0,0,0,$new_width,$new_height,$width,$height);

/*
):imagecopyresamples() ,其像素插值算法得到的图像边缘比较平滑.质量较好(但该函数的速度比 imagecopyresized() 慢).   两个函数的参数是一样的.如下:   imagecopyresampled(dest,src,dx,dy,sx,sy,dw,dh,sw,sh);
*/
//输出图像
imagejpeg($image_p, null, 100);
/*
执行该代码,将把原图像缩放50%,并以新图像输出
*/

相关文章

精彩推荐