SDK Windows EloamDll

增加引用计数


Description:    增加引用计数
Input:          img 图像句柄
Return:         返回增加后图像的引用计数
Function:       EXTERN_C LONG ELOAMAPI EloamImage_AddRef(HELOAMIMAGE img);

 

减少引用计数


Description:    减少引用计数(如果引用计数为 0 则销毁)
Input:          img 图像句柄
Return:         返回减少后图像的引用计数,为 0 表示图像已经销毁
Function:       EXTERN_C LONG ELOAMAPI EloamImage_Release(HELOAMIMAGE img);

 

创建内存块对象


Description:    创建内存块对象
Input:          img 图像句柄
                fmt 图像格式,-1 表示未知,0 表示 bmp,1 表示 ico,2 表示 jpeg,13 表示 png,18 表示 tiff,25 表示 gif
                flag 一般为0(即0x0100),对于jpg格式,0x0080表示高质量(以100:1保存),0x0100表示较高质量(以75:1保存),0x0200表示中等质量(以50:1保存),0x0400表示较差质量(以25:1保存),0x0800表示差质量(以10:1保存),1-100的十进制整数x(以x:1保存)
Return:         返回内存块句柄
Function:       EXTERN_C HELOAMMEMORY ELOAMAPI EloamImage_CreateMemory(HELOAMIMAGE img, LONG fmt, LONG flag);

 

拷贝图像


Description:    拷贝图像
Input:          imgDest 目标图像句柄
                imgSrc 源图像句柄
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_Copy(HELOAMIMAGE imgDest, HELOAMIMAGE imgSrc);

 

保存图像


Description:    保存图像
Input:          img 图像句柄
                filename 文件名
                flag 一般为 0(即 0x0100),对于 jpg 格式,0x0080 表示高质量(以 100:1 保存),0x0100表示较高质量(以 75:1 保存),0x0200 表示中等质量(以 50:1 保存),0x0400 表示较差质量(以 25:1 保存),0x0800 表示差质量(以 10:1 保存),1-100 的十进制整数 x(以 x:1保存)
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_Save(HELOAMIMAGE img, BSTR fileName, LONG flag);

 

保存图像到 PDF


Description:    保存图像到 PDF
Input:          img 图像句柄
                fmt 图像格式,0 表示 bmp,1 表示 ico,2 表示 jpeg,13 表示 png,18 表示 tiff,25 表示 gif
                fileName 文件名
                flag 一般为 0(即 0x0100),对于 jpg 格式,0x0080 表示高质量(以 100:1 保存),0x0100表示较高质量(以 75:1 保存),0x0200 表示中等质量(以 50:1 保存),0x0400 表示较差质量(以 25:1 保存),0x0800 表示差质量(以 10:1 保存),1-100 的十进制整数 x(以 x:1保存)
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_SaveToPDF(HELOAMIMAGE img, LONG fmt, BSTR fileName, LONG flag);

 

设置识别区域


Description:    设置识别区域
Input:          img 图像句柄
                rect 区域句柄,传 0 表示识别整个区域
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_SetDiscernRect(HELOAMIMAGE img, HELOAMRECT rect);

 

打印


Description:    打印
Input:          img 图像句柄
                x 打印区域左上角 x 坐标(单位毫米)
                y 打印区域左上角 y 坐标(单位毫米)
                width 打印区域宽度(单位毫米)
                height 打印区域高度(单位毫米)
                printer 打印机名称,为 0 表示使用默认打印机
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_Print(HELOAMIMAGE img, FLOAT x, FLOAT y, FLOAT width, FLOAT height, BSTR printer);

 

打印


Description:    打印
Input:          img 图像句柄
                x 打印区域左上角 x 坐标(单位毫米)
                y 打印区域左上角 y 坐标(单位毫米)
                printer 打印机名称,为 0 表示使用默认打印机
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_PrintByDPI(HELOAMIMAGE img, FLOAT x, FLOAT y, BSTR printer);

 

自适应打印


Description:    自适应打印
Input:          img 图像句柄
                width 打印区域宽度(单位毫米)
                height 打印区域高度(单位毫米)
                printer 打印机名称,为 0 表示使用默认打印机
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_AdaptivePrint(HELOAMIMAGE img, FLOAT width, FLOAT height, BSTR printer);

 

自适应打印


Description:    自适应打印
Input:          img 图像句柄
                printer 打印机名称,为 0 表示使用默认打印机
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_AdaptivePrintByDPI(HELOAMIMAGE img, BSTR printer);

 

获取图像宽度


Description:    获取图像宽度
Input:          img 图像句柄
Return:         返回图像宽度
Function:       EXTERN_C LONG ELOAMAPI EloamImage_GetWidth(HELOAMIMAGE img);

 

获取图像高度


Description:    获取图像高度
Input:          img 图像句柄
Return:         返回图像高度
Function:       EXTERN_C LONG ELOAMAPI EloamImage_GetHeight(HELOAMIMAGE img);

 

获取通道数


Description:    获取通道数
Input:          iImg 图像句柄
Return:         返回 3 表示为彩色图像,返回 1 表示灰度图像,返回-1 表示失败
Function:       EXTERN_C LONG ELOAMAPI EloamImage_GetChannels(HELOAMIMAGE img);

 

获取每行字节数


Description:    获取每行字节数
Input:          img 图像句柄
Return:         返回图像每行的字节数,一般为 4 或 8 的倍数
Function:       EXTERN_C LONG ELOAMAPI EloamImage_GetWidthStep(HELOAMIMAGE img);

 

获取 XDPI


Description:    获取 XDPI
Input:          img 图像句柄
Return:         返回 XDPI
Function:       EXTERN_C LONG ELOAMAPI EloamImage_GetXDPI(HELOAMIMAGE img)

 

获取 YDPI


Description:    获取 YDPI
Input:          img 图像句柄
Return:         返回 YDPI
Function:       EXTERN_C LONG ELOAMAPI EloamImage_GetYDPI(HELOAMIMAGE img);

 

设置 XDPI


Description:    设置 XDPI
Input:          img 图像句柄
                Value 新的 XDPI
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_SetXDPI(HELOAMIMAGE img, LONG value);

 

设置 YDPI


Description:    设置 YDPI
Input:          img 图像句柄
                value 新的 YDPI
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_SetYDPI(HELOAMIMAGE img, LONG value);

 

获取 Base64 数据


Description:    获取 Base64 数据
Input:          img 图像句柄
                fmt 图像格式,-1 表示未知,0 表示 bmp,1 表示 ico,2 表示 jpeg,13 表示 png,18 表示 tiff,25 表示 gif
                flag 一般为0(即0x0100),对于jpg格式,0x0080表示高质量(以100:1保存),0x0100表示较高质量(以75:1保存),0x0200表示中等质量(以50:1保存),0x0400表示较差质量(以25:1保存),0x0800表示差质量(以10:1保存),1-100的十进制整数x(以x:1保存)
Return:         返回 base64 字符串(fmt 为-1 时返回不带文件头的图片数据的 base64 字符串)
Function:       EXTERN_C BSTR ELOAMAPI EloamImage_GetBase64(HELOAMIMAGE img, LONG fmt, LONG flag);

 

在图像上书写文字


Description:    在图像上书写文字
Input:          img 图像句柄
                font 字体句柄
                x 绘制的起始位置 x 坐标
                y 绘制的起始位置 y 坐标
                text 绘制的文本
                clr 文本的颜色
                weight 图片所占权值,取值范围为 0-255,为 0 表示文字完全不透明,为 255 表示文字完全透明
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_DrawText(HELOAMIMAGE img, HELOAMFONT font, LONG x, LONG y, BSTR text, COLORREF clr, LONG weight);

 

在图像上书写文字


Description:    在图像上书写文字
Input:          Img 图像句柄
                Pos 位置,1 表示左上,2 表示右上,3 表示左下,4 表示右下
                text 绘制的文本
                clr 文本的颜色
                weight 图片所占权值,取值范围为 0-255,为 0 表示文字完全不透明,为 255 表示文字完全透明
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_DrawTextEx(HELOAMIMAGE img, LONG pos, BSTR text, COLORREF clr, LONG weight);

 

旋转图像


Description:    旋转图像
Input:          img 图像句柄
                angle 旋转的角度(以角度为单位),逆时针方向
                clr 旋转造成的空白区域被填充的颜色
                flag 0 表示旋转后尺寸不变,1 表示旋转后内容不丢失
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_Rotate(HELOAMIMAGE img, FLOAT angle, COLORREF clr, LONG flag);

 

裁剪图像


Description:    裁剪图像
Input:          img 图像句柄
                rect 区域句柄
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_Crop(HELOAMIMAGE img, HELOAMRECT rect);

 

重新设置图像大小


Description:    重新设置图像大小
Input:          img 图像句柄
                width 新大小宽度
                height 新大小高度
                flag 保留,必须为0
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_Resize(HELOAMIMAGE img, LONG width, LONG height, LONG flag);

 

合成图像


Description:    合成图像
Input:          imgDest 目标图像句柄
                rectDest 源图像在目标图像中的区域句柄
                imgSrc 源图像句柄
                srcRect 源图像的区域句柄
                weight 本图像所占权值,取值范围为0-255,0表示完全不透明,255表示完全透明
                flag 保留,必须为0
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_Blend(HELOAMIMAGE imgDest, HELOAMRECT rectDest, HELOAMIMAGE imgSrc, HELOAMRECT rectSrc, LONG weight, LONG flag);

 

将图像转化为彩色


Description:    将图像转化为彩色
Input:          img 图像句柄
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_ToColor(HELOAMIMAGE img);

 

将图像转化为灰度


Description:    将图像转化为灰度
Input:          img 图像句柄
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_ToGray(HELOAMIMAGE img);

 

将图像二值化


Description:    将图像二值化
Input:          img 图像句柄
                Threshold 二值化阈值 0~100
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_Threshold(HELOAMIMAGE img, LONG threshold);

 

图像自适应二值化


Description:    图像自适应二值化
Input:          img 图像句柄
                Threshold 二值化阈值 0~100
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_AdaptiveThreshold(HELOAMIMAGE img,LONG Threshold);

 

图像反色


Description:    图像反色
Input:          img 图像句柄
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_Reverse(HELOAMIMAGE img);

 

图像平滑


Description:    图像平滑
Input:          Img 图像句柄
                Flag 保留值,必须为 0
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_Smooth(HELOAMIMAGE img, LONG flag);

 

图像矫正


Description:    图像矫正
Input:          img 图像句柄
                Flag 1 表示二代证
Return:         成功返回 TRUE,失败返回 FALSE
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_Rectify(HELOAMIMAGE img, LONG flag);

 

图像白底


Description:    图像白底
Input:          img 图像句柄
                flag 保留值,必须为 0
                threshold 阈值,大于则判定为白色,有效值取值范围 0~255。特别地,若用户传-1,将使用自适应阈值计算,建议值为-1。
                autoThresholdRatio 自适应阈值的下调百分比,仅在threshold为-1时有效,取值范围0~1。建议值为 0.85
                aroundNum 邻域范围,根据此值,决定像素点判定时搜索领域的范围。取值范围为2~8,建议值为5
                lowestBrightness 最低的图像亮度,当图像亮度低于此值时自动增亮图片,取值范围0~255,建议值为180
Return:         成功返回 TRUE,失败返回 FALSE
Other:          注意:本函数多用于处理人像照片,需要被拍摄对象着深色服装,并且拍摄背景为白色
Function:       EXTERN_C BOOL ELOAMAPI EloamImage_Whiten(HELOAMIMAGE img, LONG flag, LONG threshold, FLOAT autoThresholdRatio, LONG aroundNum, LONG lowestBrightness);

 

无底色纠偏


Description:    无底色纠偏初始化
Input:          无
Return:         成功返回 0,失败返回 -1
Function:       EXTERN_C int ELOAMAPI EloamImage_InitAnyEnvDeskew();
Description:    无底色纠偏反初始化
Return:         无
Function:       EXTERN_C VOID ELOAMAPI EloamImage_DeinitAnyEnvDeskew();
Description:    无底色纠偏
Input:          img 图像内存
                flag 多纠少纠,0:少纠;1:多纠
                nOffset 偏移量,单位 px ,建议50以内
Return:         0:成功;-1:失败
Function:       EXTERN_C int ELOAMAPI EloamImage_AnyEnvDeskew(HELOAMIMAGE img, int flag, int nOffset);