php 中的图片压缩

My_It5224 2014-12-19 02:05:20
现在我想压缩图片,比如说640x480 的图片 现在存储的时候是 600k 我想实现压缩成 640x 480 的480k 大小的图片 这个能实现吗? 如果这样压缩图片会不会损坏?具体要怎么做?急求?????
...全文
216 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzuning 2014-12-23
  • 打赏
  • 举报
回复
结贴是你自己的事情
引用 8 楼 hxm_ss5224 的回复:
[quote=引用 5 楼 xuzuning 的回复:] 不可以! 把 640x 480 600k 压缩成 640x 480 480k,那么去掉的 120k 必然带走了1/5 的图片数据,导致图片质量下降 除非你的原始图片是位图方式(BMP,TIFF)的,但是 gif 是无损压缩,但只有 256 种颜色(即会丢失色彩信息) jpeg 是有损压缩,显然有损两字已经很好地说明问题了 png 虽是无损压缩,但若是 256色 的,显然是丢失了色彩信息,而真彩的又等于没压缩
我用两种方法基本实现了。麻烦斑斑给结个帖。[/quote]
My_It5224 2014-12-23
  • 打赏
  • 举报
回复
引用 4 楼 fdipzone 的回复:
參考:http://blog.csdn.net/fdipzone/article/details/9316385
谢啦,这刚好是我没有实验的那种方法。
My_It5224 2014-12-23
  • 打赏
  • 举报
回复
引用 5 楼 xuzuning 的回复:
不可以! 把 640x 480 600k 压缩成 640x 480 480k,那么去掉的 120k 必然带走了1/5 的图片数据,导致图片质量下降 除非你的原始图片是位图方式(BMP,TIFF)的,但是 gif 是无损压缩,但只有 256 种颜色(即会丢失色彩信息) jpeg 是有损压缩,显然有损两字已经很好地说明问题了 png 虽是无损压缩,但若是 256色 的,显然是丢失了色彩信息,而真彩的又等于没压缩
我用两种方法基本实现了。麻烦斑斑给结个帖。
My_It5224 2014-12-23
  • 打赏
  • 举报
回复
我用PHP可以有三种方法:

1.
$im = imagecreatefromjpeg('3.jpg');
imageinterlace($im, true);
imagejpeg($im, './3.jpg');
var_dump(imageinterlace($im, true));

这个可以将图片压缩2k(这是我的图片得到的结果)

2.
       $image = @imagecreatefromjpeg("9.jpg"); 
imagejpeg($image,'90.jpg',20); /*压缩等级0-100*/
imagedestroy ($image);

这个可以将图片压缩到90%。 imagejpeg($image,'90.jpg',0); //143k => 7k
当然这个图片就没有原来的清晰度了。所以用20可以压缩图片可以达到我想要的状态,不但能压缩到17k,用肉眼看和原图没有多大差别。
这是图9

3.php 的ImageMagick 扩展,这个没有具体试验能压缩到多少
傲雪星枫 2014-12-20
  • 打赏
  • 举报
回复
降低quality试试。
xuzuning 2014-12-20
  • 打赏
  • 举报
回复
不可以! 把 640x 480 600k 压缩成 640x 480 480k,那么去掉的 120k 必然带走了1/5 的图片数据,导致图片质量下降 除非你的原始图片是位图方式(BMP,TIFF)的,但是 gif 是无损压缩,但只有 256 种颜色(即会丢失色彩信息) jpeg 是有损压缩,显然有损两字已经很好地说明问题了 png 虽是无损压缩,但若是 256色 的,显然是丢失了色彩信息,而真彩的又等于没压缩
错_对 2014-12-19
  • 打赏
  • 举报
回复


<?php
//创建一个压缩包
$zp = gzopen("1.gz", "wb");
//获取待压缩的数据
$string = file_get_contents("com.html");
//最大化压缩数据
$compress_string = gzcompress($string, 9);
//将压缩数据写入压缩包
gzwrite($zp, $compress_string, strlen($compress_string));
gzclose($zp);
?>

图片压缩是一样的
一起混吧 2014-12-19
  • 打赏
  • 举报
回复
可以用gd库生成缩略图
猪崽儿0o0 2014-12-19
  • 打赏
  • 举报
回复
降低图片的像素就可以了,可能存在的问题就是图片的显示效果与原图的效果存在色差,存在疵点。

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧