diff --git a/build2/qt/HGScannerLib/HGScannerLib.def b/build2/qt/HGScannerLib/HGScannerLib.def index 8ce56ce1..3811566f 100644 --- a/build2/qt/HGScannerLib/HGScannerLib.def +++ b/build2/qt/HGScannerLib/HGScannerLib.def @@ -4,6 +4,7 @@ EXPORTS HGLib_MemoryCopy HGLib_LoadImage +HGLib_CloneImage HGLib_GetImageData HGLib_GetImageInfo HGLib_GetImageDpi @@ -36,6 +37,7 @@ HGLib_GetDeviceOperateCode Java_com_easing_java_HGScannerLib_LoadImage Java_com_easing_java_HGScannerLib_SaveImage +Java_com_easing_java_HGScannerLib_CloneImage Java_com_easing_java_HGScannerLib_ReleaseImage Java_com_easing_java_HGScannerLib_GetImageInfo Java_com_easing_java_HGScannerLib_GetImageData diff --git a/doc/scannerlib/新版SDK接口说明.doc b/doc/scannerlib/新版SDK接口说明.doc index 76cbbee6..51b68621 100644 Binary files a/doc/scannerlib/新版SDK接口说明.doc and b/doc/scannerlib/新版SDK接口说明.doc differ diff --git a/doc/scannerlib/新版SDK接口说明.pdf b/doc/scannerlib/新版SDK接口说明.pdf index ca7a2de2..a3274927 100644 Binary files a/doc/scannerlib/新版SDK接口说明.pdf and b/doc/scannerlib/新版SDK接口说明.pdf differ diff --git a/sdk/scannerlib/HGScannerLib.cpp b/sdk/scannerlib/HGScannerLib.cpp index 0324d947..334a2c9f 100644 --- a/sdk/scannerlib/HGScannerLib.cpp +++ b/sdk/scannerlib/HGScannerLib.cpp @@ -41,6 +41,18 @@ HGLibImage HGAPI HGLib_LoadImage(const HGChar* filePath) return (HGLibImage)image; } +HGLibImage HGAPI HGLib_CloneImage(HGLibImage image, HGUInt type, HGUInt origin) +{ + if (NULL == image) + { + return NULL; + } + + HGImage destImage = NULL; + HGBase_CloneImage((HGImage)image, type, origin, &destImage); + return (HGLibImage)destImage; +} + HGByte* HGAPI HGLib_GetImageData(HGLibImage image) { if (NULL == image) diff --git a/sdk/scannerlib/HGScannerLib.h b/sdk/scannerlib/HGScannerLib.h index 589ab791..daba5ad6 100644 --- a/sdk/scannerlib/HGScannerLib.h +++ b/sdk/scannerlib/HGScannerLib.h @@ -527,6 +527,9 @@ HGEXPORT HGBool HGAPI HGLib_MemoryCopy(HGVoid *dest, const HGVoid *src, HGUInt s /* 加载图像 */ HGEXPORT HGLibImage HGAPI HGLib_LoadImage(const HGChar *filePath); +/* 克隆图像 */ +HGEXPORT HGLibImage HGAPI HGLib_CloneImage(HGLibImage image, HGUInt type, HGUInt origin); + /* 获取图像数据 */ HGEXPORT HGByte* HGAPI HGLib_GetImageData(HGLibImage image); diff --git a/sdk/scannerlib/HGScannerLibJni.cpp b/sdk/scannerlib/HGScannerLibJni.cpp index b687f040..542fdb9b 100644 --- a/sdk/scannerlib/HGScannerLibJni.cpp +++ b/sdk/scannerlib/HGScannerLibJni.cpp @@ -56,6 +56,20 @@ extern "C" JNIEXPORT jboolean JNICALL Java_com_easing_java_HGScannerLib_SaveImag return (jboolean)ret; } +extern "C" JNIEXPORT jlong JNICALL Java_com_easing_java_HGScannerLib_CloneImage( + JNIEnv* env, jclass clazz, jlong img, jint type, jint origin) +{ + (void)env; + (void)clazz; + printf("\Java_com_easing_java_HGScannerLib_CloneImage\n"); + + HGLibImage destImg = HGLib_CloneImage((HGLibImage)img, (HGUInt)type, (HGUInt)origin); + printf("destImg=0x%p\n", destImg); + + printf("\n"); + return (jlong)destImg; +} + extern "C" JNIEXPORT jboolean JNICALL Java_com_easing_java_HGScannerLib_ReleaseImage( JNIEnv* env, jclass clazz, jlong img) { diff --git a/test/scannerlib/huagao/java/com/easing/java/HGScannerLib.java b/test/scannerlib/huagao/java/com/easing/java/HGScannerLib.java index 6861ae35..805a9c55 100644 --- a/test/scannerlib/huagao/java/com/easing/java/HGScannerLib.java +++ b/test/scannerlib/huagao/java/com/easing/java/HGScannerLib.java @@ -70,6 +70,7 @@ public class HGScannerLib { public native long LoadImage(String filePath); public native boolean SaveImage(long img, String filePath, HGLibSaveImageParam saveParam); + public native long CloneImage(long img, int type, int origin); public native boolean ReleaseImage(long img); public native HGLibImageInfo GetImageInfo(long img); public native byte[] GetImageData(long img);