wx.chooseImage, compressed 压缩具体做了什么?
发布于 5 年前 作者 nma 10071 次浏览 来自 问答

在选择图片的接口 wx.chooseImage(Object object)

https://developers.weixin.qq.com/miniprogram/dev/api/wx.chooseImage.html

大小有2种选择

sizeType  [‘original’, ‘compressed’]

请问 compressed 具体对图片做了什么操作?

图片宽高改为原来的 80%?如果图片超过一定大小就压缩,否则就不压缩?

具体怎么实现的?

希望有官方人员来描述一下 Android 和 iOS 上 compressed 具体做了什么,让我们开发者有个大致概念。

目前文档中只说了选项,但没说这两者之间的区别。所以不知道该选哪个。

我们在做一个以图片为主的小程序(可以大致类比成 Instagram)对小程序中对图片的处理需要有更深入的了解。

文档翻了,社区搜了,没有找到类似的问题和解答,所以发个新问题来问

3 回复

实测发现区别如下:一张 8.1MB (macOS 上的 8.1MB) 图片。

我们的业务场景是用户选择图片后会进入一个图片裁剪页。

如果用 original,在用户进入图片裁剪页时,因为需要用 canvas 裁剪,小程序会崩溃。有时候会把微信也带崩溃了。但是用 compressed 就没问题。最后的裁剪出来的图片,肉眼也看不出明显区别。

所以目前的结论是,尽量使用 compressed 以获得更好的性能。图片质量的区别肉眼基本看不出来

小程序的资料有点少啊,文档也不是很详细

一个原图,一个压缩图?

回到顶部