php图片按比例缩放_图片等比例缩放
php等比缩放图片,就是只按宽度缩小图片,当图片宽度大于750时就缩小到750 高度不用管 跟着宽度缩就行了
首先说一下思路,首先你要判断图片的宽度,这需要用到一个函数,个人比较喜欢用getimagesize()
其次是等比例绽放,需要用到imagecopyresized(当然还有其他函数)
注意:我这里用到的是gd库
实现:
写一个函数或者类都行,我这里就以面向过程的方式来写,你可以整理一下
$file = 'pic.jpg'; //原图片文件
if($info[0] $maxWidth )
{
exit('图片小于'.$maxWidth.',不需要缩放');
}
$im = imagecreatefromjpeg($file); //根据图片的格式对应的不同的函数,在此不多赘述.
$rate = $maxWidth/$info[0]; //计算绽放比例
$maxHeight = floor($info[1]*$rate); //计算出缩放后的高度
$des_im = imagecreatetruecolor($maxWidth,$maxHeight); //创建一个缩放的画布
imagecopyresized($des_im,$im,0,0,0,0,$maxWidth,$maxHeight,$info[0],$info[1]); //缩放
imagejpeg($des_im,'thumb.jpg'); //输出到thumb.jpg即为一个缩放后的文件
php实现图片等比例缩放代码
新建文件index.php,需要在统计目录下有个图片为q.jpg(可根据源码进行更改图片的名称)
源代码如下:
php
$filename="q.jpg";
list($width,
$height)=getimagesize($filename);
$n_w=$width*$per;
$n_h=$height*$per;
$new=imagecreatetruecolor($n_w,
$n_h);
$img=imagecreatefromjpeg($filename);
//拷贝部分图像并调整
imagecopyresized($new,
$img,0,
0,0,
0,$n_w,
$n_h,
$width,
$height);
//图像输出新图片、另存为
imagejpeg($new,
"q1.jpg");
imagedestroy($new);
imagedestroy($img);
使用浏览器运行过后,在index.php同级的目录下会有个q1.jpg,这个图片就是等比例缩放后的图片,路径可以自己在源代码里面更改,放在自己的项目当中去或写个方法也行
以上所述上就是本文的全部内容了,希望对大家学习php语言能够有所帮助.
PHP等比例压缩图片的实例代码
具体代码如下所示:
/**
*
desription
压缩图片
@param
sting
$imgsrc
图片路径
string
$imgdst
压缩后保存路径
*/
public
function
compressedImage($imgsrc,
$imgdst)
$height,
$type)
=
getimagesize($imgsrc);
$new_width
$width;//压缩后的图片宽
$new_height
$height;//压缩后的图片高
if($width
$per
/
$width;//计算比例
$width
$per;
$height
switch
($type)
case
$giftype
check_gifcartoon($imgsrc);
if
($giftype)
header('Content-Type:image/gif');
$image_wp
imagecreatetruecolor($new_width,
$new_height);
$image
imagecreatefromgif($imgsrc);
imagecopyresampled($image_wp,
$image,
0,
$new_width,
$new_height,
imagejpeg($image_wp,
$imgdst,
imagedestroy($image_wp);
imagedestroy($image);
break;
header('Content-Type:image/jpeg');
imagecreatefromjpeg($imgsrc);
header('Content-Type:image/png');
imagecreatefrompng($imgsrc);
总结
以上所述是小编给大家介绍的PHP等比例压缩图片的实例代码,希望大家如果觉得本站发布的文章不错,请转发分享给您身边的朋友,您的支持是我们最大的动力,如果大家有任何疑问请给我留言,小编会及时回复大家的.在此也非常感谢大家对脚本之家网站的支持!
您可能感兴趣的文章:php中10个不同等级压缩优化图片操作示例PHP
实现等比压缩图片尺寸和大小实例代码php
gd等比例缩放压缩图片函数基于PHP实现等比压缩图片大小php上传图片并压缩的实现方法PHP实现图片上传并压缩PHP实现图片压缩的两则实例php使用imagick模块实现图片缩放、裁剪、压缩示例
如何实现php图片等比例缩放
$imgsrc=$image_name;
$imgdst=$image_name;
list($width,$height,$type)=getimagesize($imgsrc);?
$giftype=check_gifcartoon($imgsrc);?
$image_wp=imagecreatetruecolor($new_width,?$new_height);?
$image?=?imagecreatefromgif($imgsrc);?
imagecopyresampled($image_wp,?$image,?0,?0,?0,?0,?$new_width,?$new_height,?$width,?$height);?
imagedestroy($image_wp);?