gpt4 book ai didi

java - Android,压缩图像

转载 作者:太空宇宙 更新时间:2023-11-03 13:33:30 25 4
gpt4 key购买 nike

我正在通过 wifi 或移动网络通过网络发送图像以存储在服务器中并再次检索。我已经这样做了,但由于相机拍摄的图像大小,它使我的应用程序变慢,只是指出我正在打开画廊并从那里拍摄照片,而不是直接从应用程序拍摄照片。我注意到从相机和画廊拍摄的 whatsapp 图像已被压缩到大约。 100kb。

目前我的代码获取一个文件并将其转换为字节,然后发送它。这是获取文件并将其转换为字节的方法。

private void toBytes(String filePath){
try{
File file = new File(filePath);
InputStream is = new BufferedInputStream(new FileInputStream(file));
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
bytes = new byte[(int) filePath.length()];
int bytes_read;
while((bytes_read = is.read(bytes, 0, bytes.length)) != -1){
buffer.write(bytes, 0, bytes_read);
}
is.close();
bytes = buffer.toByteArray();
}catch(Exception err){
Toast.makeText(getApplicationContext(), err.toString(), Toast.LENGTH_SHORT).show();
}
}

所以我的问题是如何在发送前压缩图像?此外,我不需要图像保留高像素数,因为当应用程序使用图像时,它只会占据设备屏幕的一半。

感谢您提供的任何帮助。

最佳答案

位图 http://developer.android.com/reference/android/graphics/Bitmap.html类有一个 compress 方法。但是您可能需要缩放图像 createScaledBitmap,在同一类中也可用。

关于java - Android,压缩图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10267523/

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