您的位置:

php上传图片按比例缩小(php图片压缩成指定大小)

本文目录一览:

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);

    }

这个是代码和所引用的