您的位置:首页 > 其它

求助一个问题,100分,我也没多少分了。

2017-01-02 12:05 190 查看
我在写一个图片压缩的方法,因为要上传到服务器,所以图片不可以过大。

网上的这些方法也都烂了,可是都不怎么管用。比如我现在使用的。

我在这个循环里设置了,如果baos.toByteArray().length / 1024>50成立,就继续压缩。

可是我设置段点之后,发现baos.toByteArray().length / 1024已经运行到小于50了,然后返回这个bitmap。当我上传到服务器的时候,图片竟然是二三百K,我想问问大家有没有懂的,帮我一下。

或者哪位朋友有好的图片压缩方法给我一个。
ByteArrayOutputStream baos = new ByteArrayOutputStream();

image.compress(Bitmap.CompressFormat.JPEG, 100, baos);

int options = 100;

while ( baos.toByteArray().length / 1024>50) {

baos.reset();

options -= 10;

image.compress(Bitmap.CompressFormat.JPEG, options, baos);

}

ByteArrayInputStream isBm = new ByteArrayInputStream(baos.toByteArray());

Bitmap bitmap = BitmapFactory.decodeStream(isBm, null, null);

return bitmap;


我不需要图片宽高的那种压缩,我只想要一张图片在不让它失真太严重的情况下,能压缩到50k以下。实在不行100k以内也可以。但是不要失真太严重
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐