0

我有一个绘画应用程序,它在一些设备上很快就耗尽了内存...... :(

问题是我有屏幕大小的位图,并且我将 2 或 3 个图像加载到内存中,而不是创建一个附加到画布的空白位图以将 3 个图像合并到其中。所以是的很多位图......

我的目标是使用 NDK 从文件中加载图像并合并它们并仅返回一个位图。基本上在java中我会创建空图像并将对象传递给NDK。这应该会减少设备上使用的内存量。至少理论上...

我面临的第一个问题是从文件中解码 png 图像。我怎样才能通过 NDK 做到这一点?我应该通过 JNI 使用 BitmapFactory 吗?

比如何合并这些 ARGB 位图更大的问题?

4

1 回答 1

0

我不熟悉 NDK 中内置了哪些图像处理功能,但可以包含 OpenCV 库以在本机代码中使用,这就是我使用的(主要是由于之前的熟悉,但它真的很好)。

这是OpenCV 4 Android项目。这是打开 PNG 的方法。

于 2012-05-18T22:14:32.237 回答