如何在 Android 上保存具有自定义质量级别的 JPEG 图像
在 Android 上,如何将图像文件保存为 30% 质量的 JPEG?
在标准 Java 中,我将使用 ImageIO
将图像读取为 BufferedImage
,然后使用 IIOImage
实例将其保存为 JPEG 文件:< a href="http://www.universalwebservices.net/web-programming-resources/java/adjust-jpeg-image-compression-quality-when- saving-images-in-java" rel="noreferrer">http: //www.universalwebservices.net/web-programming-resources/java/adjust-jpeg-image-compression-quality-when- saving-images-in-java。然而,Android 似乎缺少 javax.imageio
包。
On Android, how do I save an image file as a JPEG at 30% quality?
In standard Java, I would use ImageIO
to read the image as a BufferedImage
, then save it as a JPEG file using an IIOImage
instance: http://www.universalwebservices.net/web-programming-resources/java/adjust-jpeg-image-compression-quality-when-saving-images-in-java. It appears, however, that Android lacks the javax.imageio
package.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您可以通过调用 compress 并设置第二个参数来以 JPEG 格式存储位图:
You can store your bitmap in the JPEG format by calling compress and setting the second parameter:
@Phyrum Tea 很好,只是别忘了关闭所有东西
@Phyrum Tea is good only do not forget close everything
使用 Kotlin 将
path
中的文件保存到tmpPath
:编辑:确保检查解码失败(并返回 null)的可能性以及压缩实际工作的可能性(布尔返回类型)。
Using Kotlin to save a file in
path
totmpPath
:Edit: make sure you check for the possibility of the decode failing (and returning null) and also that compress actually worked (boolean return type).