implement BitmapFactory.decodeStream() using gdk_pixbuf_new_from_stream

The java InputStream is wrapped into a custom GInputStream
implementation
This commit is contained in:
Julian Winkler
2023-09-01 13:09:04 +02:00
parent 30b990f60a
commit ceb5df9d39
7 changed files with 95 additions and 8 deletions

View File

@@ -19,6 +19,14 @@ extern "C" {
JNIEXPORT jlong JNICALL Java_android_graphics_Bitmap_native_1bitmap_1from_1path
(JNIEnv *, jobject, jobject);
/*
* Class: android_graphics_Bitmap
* Method: native_copy
* Signature: (J)J
*/
JNIEXPORT jlong JNICALL Java_android_graphics_Bitmap_native_1copy
(JNIEnv *, jclass, jlong);
/*
* Class: android_graphics_Bitmap
* Method: getWidth
@@ -86,10 +94,10 @@ JNIEXPORT void JNICALL Java_android_graphics_Bitmap_nativeErase
/*
* Class: android_graphics_Bitmap
* Method: nativeRowBytes
* Signature: (I)I
* Signature: (J)I
*/
JNIEXPORT jint JNICALL Java_android_graphics_Bitmap_nativeRowBytes
(JNIEnv *, jclass, jint);
(JNIEnv *, jclass, jlong);
/*
* Class: android_graphics_Bitmap

View File

@@ -12,9 +12,9 @@ extern "C" {
/*
* Class: android_graphics_BitmapFactory
* Method: nativeDecodeStream
* Signature: (Ljava/io/InputStream;[BLandroid/graphics/Rect;Landroid/graphics/BitmapFactory/Options;)Landroid/graphics/Bitmap;
* Signature: (Ljava/io/InputStream;[BLandroid/graphics/Rect;Landroid/graphics/BitmapFactory/Options;)J
*/
JNIEXPORT jobject JNICALL Java_android_graphics_BitmapFactory_nativeDecodeStream
JNIEXPORT jlong JNICALL Java_android_graphics_BitmapFactory_nativeDecodeStream
(JNIEnv *, jclass, jobject, jbyteArray, jobject, jobject);
/*