本文目录一览:
php按宽度缩放图片?
我不明白你的意思,如果你是想比如用户上传了一个图片,然后你用php自动等比缩小图片,然后将缩小后的图片再保存到服务器上,我不晓得怎么做,因为我不会用php。
不过如果仅仅是调用img 然后让img等比缩小在页面中显示,为什么不能用CSS+js
css{
max-height:100px;
max-width:100px; /*图片等比例缩小,最大宽度和高度都是100px,可以自己改变,原图没有超过设置的大小,输出就是原图大小*/
}
IE6不支持MAX属性
然后再加一段js去实现在IE6下的img等比缩放大小,网上有源代码。
如何实现php图片等比例缩放
$imgsrc=$image_name;
$imgdst=$image_name;
list($width,$height,$type)=getimagesize($imgsrc);
$new_width = ($width600?600:$width)*0.9;
$new_height =($height600?600:$height)*0.9;
$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);
imagejpeg($image_wp, $imgdst,75);
imagedestroy($image_wp);
PHP等比例压缩图片的实例代码
具体代码如下所示:
/**
*
desription
压缩图片
*
@param
sting
$imgsrc
图片路径
*
@param
string
$imgdst
压缩后保存路径
*/
public
function
compressedImage($imgsrc,
$imgdst)
{
list($width,
$height,
$type)
=
getimagesize($imgsrc);
$new_width
=
$width;//压缩后的图片宽
$new_height
=
$height;//压缩后的图片高
if($width
=
600){
$per
=
600
/
$width;//计算比例
$new_width
=
$width
*
$per;
$new_height
=
$height
*
$per;
}
switch
($type)
{
case
1:
$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,
0,
0,
0,
$new_width,
$new_height,
$width,
$height);
//90代表的是质量、压缩图片容量大小
imagejpeg($image_wp,
$imgdst,
90);
imagedestroy($image_wp);
imagedestroy($image);
}
break;
case
2:
header('Content-Type:image/jpeg');
$image_wp
=
imagecreatetruecolor($new_width,
$new_height);
$image
=
imagecreatefromjpeg($imgsrc);
imagecopyresampled($image_wp,
$image,
0,
0,
0,
0,
$new_width,
$new_height,
$width,
$height);
//90代表的是质量、压缩图片容量大小
imagejpeg($image_wp,
$imgdst,
90);
imagedestroy($image_wp);
imagedestroy($image);
break;
case
3:
header('Content-Type:image/png');
$image_wp
=
imagecreatetruecolor($new_width,
$new_height);
$image
=
imagecreatefrompng($imgsrc);
imagecopyresampled($image_wp,
$image,
0,
0,
0,
0,
$new_width,
$new_height,
$width,
$height);
//90代表的是质量、压缩图片容量大小
imagejpeg($image_wp,
$imgdst,
90);
imagedestroy($image_wp);
imagedestroy($image);
break;
}
}
总结
以上所述是小编给大家介绍的PHP等比例压缩图片的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
您可能感兴趣的文章:php中10个不同等级压缩优化图片操作示例PHP
实现等比压缩图片尺寸和大小实例代码php
gd等比例缩放压缩图片函数基于PHP实现等比压缩图片大小php上传图片并压缩的实现方法PHP实现图片上传并压缩PHP实现图片压缩的两则实例php使用imagick模块实现图片缩放、裁剪、压缩示例
跪求PHP上传图片并按比例缩放到一定尺寸的程序,非常感谢
public function upimges(){
$filename = time();
header("Content-Type:text/html;charset=utf-8");
$upload = new Upimage('','','','',$filename);
//设置上传文件大小
$upload-maxSize = 100000000000000 ;
// $upload-saveRule =microtime().'_'.mt_rand(1000,9999);
//上传文件命名规则time uniqid com_create_guid 等
// $upload-$saveRule = time() ;
//设置上传文件类型
$upload-allowExts = explode(',','jpg,gif,png,jpeg');
//设置附件上传目录
$upload-savePath = './data/attached/skp/'.$_SESSION['formtoken'].'/';
$upload-thumb = true;
// 设置引用图片类库包路径
$upload-imageClassPath = './Image.php';
//设置需要生成缩略图的文件后缀
$upload-thumbPrefix = 'thumb_,thumbm_,thumbl_,thumbs_';//生产4张缩略图
//设置缩略图最大宽度
$upload-thumbMaxWidth = '960,480,120,64';
//设置缩略图最大高度
$upload-thumbMaxHeight = '960,480,120,64';
//删除原图
$upload-thumbRemoveOrigin = false;
if(!$upload-upload()) {
$data['tip'] = $upload-getErrorMsg();
$data['status'] = '0';
}else{
$info = $upload-getUploadFileInfo();
$data['counts'] = count($info);
$data['status'] = '1';
$data['tip'] = '上传成功';
$data['info'] = $info;
}
echo json_encode($data);
}
这个是代码和所引用的