diff options
Diffstat (limited to 'platform/java')
-rw-r--r-- | platform/java/mupdf_native.c | 31 | ||||
-rw-r--r-- | platform/java/mupdf_native.h | 14 | ||||
-rw-r--r-- | platform/java/src/com/artifex/mupdf/fitz/PDFDocument.java | 2 | ||||
-rw-r--r-- | platform/java/src/com/artifex/mupdf/fitz/PDFGraftMap.java | 2 |
4 files changed, 39 insertions, 10 deletions
diff --git a/platform/java/mupdf_native.c b/platform/java/mupdf_native.c index f485f4f5..a0a509bf 100644 --- a/platform/java/mupdf_native.c +++ b/platform/java/mupdf_native.c @@ -6396,19 +6396,17 @@ FUN(PDFDocument_newPDFGraftMap)(JNIEnv *env, jobject self) } JNIEXPORT jobject JNICALL -FUN(PDFDocument_graftObject)(JNIEnv *env, jobject self, jobject jsrc, jobject jobj, jobject jmap) +FUN(PDFDocument_graftObject)(JNIEnv *env, jobject self, jobject jobj) { fz_context *ctx = get_context(env); - pdf_document *dst = from_PDFDocument(env, self); - pdf_document *src = from_PDFDocument(env, jsrc); pdf_obj *obj = from_PDFObject(env, jobj); - pdf_graft_map *map = from_PDFGraftMap(env, jmap); + pdf_document *dst = from_PDFDocument(env, self); if (!ctx || !dst) return NULL; - if (!src) { jni_throw_arg(env, "source must not be null"); return NULL; } + if (!dst) { jni_throw_arg(env, "dst must not be null"); return NULL; } fz_try(ctx) - obj = pdf_graft_object(ctx, dst, src, obj, map); + obj = pdf_graft_object(ctx, dst, obj); fz_catch(ctx) { jni_rethrow(env, ctx); @@ -8101,6 +8099,27 @@ FUN(PDFGraftMap_finalize)(JNIEnv *env, jobject self) pdf_drop_graft_map(ctx, map); } +JNIEXPORT jobject JNICALL +FUN(PDFGraftMap_graftObject)(JNIEnv *env, jobject self, jobject jobj) +{ + fz_context *ctx = get_context(env); + pdf_obj *obj = from_PDFObject(env, jobj); + pdf_graft_map *map = from_PDFGraftMap(env, self); + + if (!ctx) return NULL; + if (!map) { jni_throw_arg(env, "map must not be null"); return NULL; } + + fz_try(ctx) + obj = pdf_graft_mapped_object(ctx, map, obj); + fz_catch(ctx) + { + jni_rethrow(env, ctx); + return NULL; + } + + return to_PDFObject_safe_own(ctx, env, self, obj); +} + /* PDFPage interface */ JNIEXPORT jobject JNICALL diff --git a/platform/java/mupdf_native.h b/platform/java/mupdf_native.h index 7641f32b..cdcebc50 100644 --- a/platform/java/mupdf_native.h +++ b/platform/java/mupdf_native.h @@ -1722,7 +1722,7 @@ JNIEXPORT void JNICALL Java_com_artifex_mupdf_fitz_PDFDocument_deleteObject /* * Class: com_artifex_mupdf_fitz_PDFDocument * Method: newPDFGraftMap - * Signature: ()Lcom/artifex/mupdf/fitz/PDFGraftMap; + * Signature: (Lcom/artifex/mupdf/fitz/PDFDocument)Lcom/artifex/mupdf/fitz/PDFGraftMap; */ JNIEXPORT jobject JNICALL Java_com_artifex_mupdf_fitz_PDFDocument_newPDFGraftMap (JNIEnv *, jobject); @@ -1730,10 +1730,10 @@ JNIEXPORT jobject JNICALL Java_com_artifex_mupdf_fitz_PDFDocument_newPDFGraftMap /* * Class: com_artifex_mupdf_fitz_PDFDocument * Method: graftObject - * Signature: (Lcom/artifex/mupdf/fitz/PDFDocument;Lcom/artifex/mupdf/fitz/PDFObject;Lcom/artifex/mupdf/fitz/PDFGraftMap;)Lcom/artifex/mupdf/fitz/PDFObject; + * Signature: (Lcom/artifex/mupdf/fitz/PDFDocument;Lcom/artifex/mupdf/fitz/PDFObject)Lcom/artifex/mupdf/fitz/PDFObject; */ JNIEXPORT jobject JNICALL Java_com_artifex_mupdf_fitz_PDFDocument_graftObject - (JNIEnv *, jobject, jobject, jobject, jobject); + (JNIEnv *, jobject, jobject); /* * Class: com_artifex_mupdf_fitz_PDFDocument @@ -1850,6 +1850,14 @@ extern "C" { JNIEXPORT void JNICALL Java_com_artifex_mupdf_fitz_PDFGraftMap_finalize (JNIEnv *, jobject); +/* + * Class: com_artifex_mupdf_fitz_PDFGraftMap + * Method: graftObject + * Signature: (Lcom/artifex/mupdf/fitz/PDFGraftMap;Lcom/artifex/mupdf/fitz/PDFObject;)Lcom/artifex/mupdf/fitz/PDFObject; + */ +JNIEXPORT jobject JNICALL Java_com_artifex_mupdf_fitz_PDFGraftMap_graftObject + (JNIEnv *, jobject, jobject, jobject); + #ifdef __cplusplus } #endif diff --git a/platform/java/src/com/artifex/mupdf/fitz/PDFDocument.java b/platform/java/src/com/artifex/mupdf/fitz/PDFDocument.java index a925ac90..5c0cc5ec 100644 --- a/platform/java/src/com/artifex/mupdf/fitz/PDFDocument.java +++ b/platform/java/src/com/artifex/mupdf/fitz/PDFDocument.java @@ -40,7 +40,7 @@ public class PDFDocument extends Document } public native PDFGraftMap newPDFGraftMap(); - public native PDFObject graftObject(PDFDocument src, PDFObject obj, PDFGraftMap map); + public native PDFObject graftObject(PDFObject obj); private native PDFObject addStreamBuffer(Buffer buf, Object obj, boolean compressed); private native PDFObject addStreamString(String str, Object obj, boolean compressed); diff --git a/platform/java/src/com/artifex/mupdf/fitz/PDFGraftMap.java b/platform/java/src/com/artifex/mupdf/fitz/PDFGraftMap.java index 5587ed2c..fedace4f 100644 --- a/platform/java/src/com/artifex/mupdf/fitz/PDFGraftMap.java +++ b/platform/java/src/com/artifex/mupdf/fitz/PDFGraftMap.java @@ -11,6 +11,8 @@ public class PDFGraftMap pointer = 0; } + public native PDFObject graftObject(PDFObject obj); + private PDFGraftMap(long p) { pointer = p; } |