scannerlib增加CloneImage接口

This commit is contained in:
luoliangyi 2023-11-22 15:07:50 +08:00
parent 5331625acf
commit 3b02dcd23b
7 changed files with 32 additions and 0 deletions

View File

@ -4,6 +4,7 @@ EXPORTS
HGLib_MemoryCopy HGLib_MemoryCopy
HGLib_LoadImage HGLib_LoadImage
HGLib_CloneImage
HGLib_GetImageData HGLib_GetImageData
HGLib_GetImageInfo HGLib_GetImageInfo
HGLib_GetImageDpi HGLib_GetImageDpi
@ -36,6 +37,7 @@ HGLib_GetDeviceOperateCode
Java_com_easing_java_HGScannerLib_LoadImage Java_com_easing_java_HGScannerLib_LoadImage
Java_com_easing_java_HGScannerLib_SaveImage Java_com_easing_java_HGScannerLib_SaveImage
Java_com_easing_java_HGScannerLib_CloneImage
Java_com_easing_java_HGScannerLib_ReleaseImage Java_com_easing_java_HGScannerLib_ReleaseImage
Java_com_easing_java_HGScannerLib_GetImageInfo Java_com_easing_java_HGScannerLib_GetImageInfo
Java_com_easing_java_HGScannerLib_GetImageData Java_com_easing_java_HGScannerLib_GetImageData

View File

@ -41,6 +41,18 @@ HGLibImage HGAPI HGLib_LoadImage(const HGChar* filePath)
return (HGLibImage)image; 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) HGByte* HGAPI HGLib_GetImageData(HGLibImage image)
{ {
if (NULL == image) if (NULL == image)

View File

@ -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_LoadImage(const HGChar *filePath);
/* 克隆图像 */
HGEXPORT HGLibImage HGAPI HGLib_CloneImage(HGLibImage image, HGUInt type, HGUInt origin);
/* 获取图像数据 */ /* 获取图像数据 */
HGEXPORT HGByte* HGAPI HGLib_GetImageData(HGLibImage image); HGEXPORT HGByte* HGAPI HGLib_GetImageData(HGLibImage image);

View File

@ -56,6 +56,20 @@ extern "C" JNIEXPORT jboolean JNICALL Java_com_easing_java_HGScannerLib_SaveImag
return (jboolean)ret; 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( extern "C" JNIEXPORT jboolean JNICALL Java_com_easing_java_HGScannerLib_ReleaseImage(
JNIEnv* env, jclass clazz, jlong img) JNIEnv* env, jclass clazz, jlong img)
{ {

View File

@ -70,6 +70,7 @@ public class HGScannerLib {
public native long LoadImage(String filePath); public native long LoadImage(String filePath);
public native boolean SaveImage(long img, String filePath, HGLibSaveImageParam saveParam); 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 boolean ReleaseImage(long img);
public native HGLibImageInfo GetImageInfo(long img); public native HGLibImageInfo GetImageInfo(long img);
public native byte[] GetImageData(long img); public native byte[] GetImageData(long img);