gpt4 book ai didi

Android getPixels() 可能是一个愚蠢的错误?

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

好吧,这很容易理解,但是由于一些奇怪的原因我无法让它工作。我已经从实际代码中简化了这个例子。

InputStream is = context.getResources().openRawResource(R.raw.someimage);
Bitmap bitmap = BitmapFactory.decodeStream(is);
try
{
int[] pixels = new int[32*32];
bitmap.getPixels(pixels, 0, 800, 0, 0, 32, 32);
}
catch(ArrayIndexOutOfBoundsException ex)
{
Log.e("testing", "ArrayIndexOutOfBoundsException", ex);
}

到底为什么我总是收到 ArrayIndexOutOfBoundsException?像素数组是 32x32,据我所知,我正确地使用了 getPixels。图像尺寸为 800x800,我正在尝试检索 32x32 部分。该图像是 32 位 PNG,报告为 ARGB-8888。

有什么想法吗?即使我是个白痴!我要把键盘扔出窗外 :D

最佳答案

使用位图宽度作为步幅,在你的例子中是 32

 bitmap.getPixels(pixels, 0, 32, 0, 0, 32, 32);

每行间隔 800 都会导致你的像素阵列越界

“我要把键盘扔出窗外”搞笑哈哈

关于Android getPixels() 可能是一个愚蠢的错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7364188/

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