gpt4 book ai didi

java - 在不首先读取整个位图的情况下裁剪位图

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:59:39 24 4
gpt4 key购买 nike

我有一个非常大的图像,我只想显示显示器大小的部分(无缩放),并且该部分应该恰好位于图像的中心。因为图像非常大,我无法将整个图像读入内存然后进行裁剪。这是我到目前为止所拥有的,但它会为大图像提供 OutOfMemory。另外我认为 inSampleSize 不适用,因为我想裁剪图像,而不是降低分辨率。

Uri data = getIntent().getData();
InputStream is = getContentResolver().openInputStream(data);
Bitmap bitmap = BitmapFactory.decodeStream(is, null, null);

有什么帮助会很好吗?

最佳答案

您可以分两步完成此操作:

  1. 使用 inJustDecodeBounds=true 获取位图的大小。

  2. 使用 BitmapRegionDecoder 只解码您想要的部分。

缺点?它仅适用于 API 10(但它已经是大多数...)。

关于java - 在不首先读取整个位图的情况下裁剪位图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3300998/

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