gpt4 book ai didi

java - 在不改变分辨率的情况下缩小大 JPEG 的大小

转载 作者:行者123 更新时间:2023-11-30 03:31:56 26 4
gpt4 key购买 nike

我的相机有一张 3264x1952 的 JPEG。这个文件大约有 1.7 兆字节。

我想知道是否可以在不更改分辨率的情况下将此图像压缩到较小的文件大小。即我希望生成的图像也是 3264x1952。

如果不使用 inSampleSize 选项缩小图像,我什至无法将此 JPEG 作为位图打开。

有人知道我的选择是什么吗?有什么办法可以减少色位深度/增加压缩/降低质量?

编辑:我正在专门寻找适用于 Android 的解决方案。主要问题是我无法在不遇到 OOM 错误的情况下打开完整的 res JPEG,所以我不知道如何继续。

理想情况下我想这样做:

bitmap.compress(Bitmap.CompressFormat.JPEG, 50, out);

但是当我这样做时应用程序会崩溃:

Bitmap bitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());

最佳答案

您可以使用 BitmapFactory.decodeFile 方法,该方法将 BitmapFactory.Options 对象作为第二个参数,并使用 inSampleSize 缩放图像。例如,inSampleSize = 2 将生成 width/2height/2, 的输出图像。请记住,您的位图始终需要 width x heigth x 4 字节的内存

关于java - 在不改变分辨率的情况下缩小大 JPEG 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17313421/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com