1.HGScannerLib库Option文件完善

2.Websdk增加判断空白页功能
This commit is contained in:
luoliangyi 2022-08-01 15:58:12 +08:00
parent ff7ec42b86
commit 527929d880
6 changed files with 347 additions and 7 deletions

View File

@ -1,4 +1,319 @@
#ifndef __HGSCANNERLIBOPTION_H__
#define __HGSCANNERLIBOPTION_H__
// "多流输出"
#define HGLIB_OPTION_TITLE_DLSC "\345\244\232\346\265\201\350\276\223\345\207\272"
// "多流输出类型"
#define HGLIB_OPTION_TITLE_DLSCLX "\345\244\232\346\265\201\350\276\223\345\207\272\347\261\273\345\236\213"
// "无"
#define HGLIB_OPTION_VALUE_DLSCLX_W "\346\227\240"
// "彩色+灰度+黑白"
#define HGLIB_OPTION_VALUE_DLSCLX_CS_HD_HB "\345\275\251\350\211\262+\347\201\260\345\272\246+\351\273\221\347\231\275"
// "彩色+灰度"
#define HGLIB_OPTION_VALUE_DLSCLX_CS_HD "\345\275\251\350\211\262+\347\201\260\345\272\246"
// "彩色+黑白"
#define HGLIB_OPTION_VALUE_DLSCLX_CS_HB "\345\275\251\350\211\262+\351\273\221\347\231\275"
// "灰度+黑白"
#define HGLIB_OPTION_VALUE_DLSCLX_HD_HB "\347\201\260\345\272\246+\351\273\221\347\231\275"
// "颜色模式"
#define HGLIB_OPTION_TITLE_YSMS "\351\242\234\350\211\262\346\250\241\345\274\217"
// "24位彩色"
#define HGLIB_OPTION_VALUE_YSMS_24WCS "24\344\275\215\345\275\251\350\211\262"
// "256级灰度"
#define HGLIB_OPTION_VALUE_YSMS_256JHD "256\347\272\247\347\201\260\345\272\246"
// "黑白"
#define HGLIB_OPTION_VALUE_YSMS_HB "\351\273\221\347\231\275"
// "颜色自动识别"
#define HGLIB_OPTION_VALUE_YSMS_YSZDSB "\351\242\234\350\211\262\350\207\252\345\212\250\350\257\206\345\210\253"
// "黑白图像阈值"
#define HGLIB_OPTION_TITLE_HBTXYZ "\351\273\221\347\231\275\345\233\276\345\203\217\351\230\210\345\200\274"
// "灰度或黑白图像 - 除色"
#define HGLIB_OPTION_TITLE_HDHHBTX_CS "\347\201\260\345\272\246\346\210\226\351\273\221\347\231\275\345\233\276\345\203\217 - \351\231\244\350\211\262"
// "不除色"
#define HGLIB_OPTION_VALUE_HDHHBTX_CS_BCS "\344\270\215\351\231\244\350\211\262"
// "除红色"
#define HGLIB_OPTION_VALUE_HDHHBTX_CS_CHS "\351\231\244\347\272\242\350\211\262"
// "除绿色"
#define HGLIB_OPTION_VALUE_HDHHBTX_CS_CLS "\351\231\244\347\273\277\350\211\262"
// "除蓝色"
#define HGLIB_OPTION_VALUE_HDHHBTX_CS_CHULANSE "\351\231\244\350\223\235\350\211\262"
// "红色增强"
#define HGLIB_OPTION_VALUE_HDHHBTX_CS_HSZQ "\347\272\242\350\211\262\345\242\236\345\274\272"
// "绿色增强"
#define HGLIB_OPTION_VALUE_HDHHBTX_CS_LSZQ "\347\273\277\350\211\262\345\242\236\345\274\272"
// "蓝色增强"
#define HGLIB_OPTION_VALUE_HDHHBTX_CS_LANSEZENGQIANG "\350\223\235\350\211\262\345\242\236\345\274\272"
// "24位彩色图像 - 多流输出除红"
#define HGLIB_OPTION_TITLE_24WCSTX_DLSCCH "24\344\275\215\345\275\251\350\211\262\345\233\276\345\203\217 - \345\244\232\346\265\201\350\276\223\345\207\272\351\231\244\347\272\242"
// "24位彩色图像 - 答题卡除红"
#define HGLIB_OPTION_TITLE_24WCSTX_DTKCH "24\344\275\215\345\275\251\350\211\262\345\233\276\345\203\217 - \347\255\224\351\242\230\345\215\241\351\231\244\347\272\242"
// "背景移除"
#define HGLIB_OPTION_TITLE_BJYC "\350\203\214\346\231\257\347\247\273\351\231\244"
// "背景色彩浮动范围"
#define HGLIB_OPTION_TITLE_BJSCFDFW "\350\203\214\346\231\257\350\211\262\345\275\251\346\265\256\345\212\250\350\214\203\345\233\264"
// "锐化与模糊"
#define HGLIB_OPTION_TITLE_RHYMH "\351\224\220\345\214\226\344\270\216\346\250\241\347\263\212"
// "无"
#define HGLIB_OPTION_VALUE_RHYMH_W "\346\227\240"
// "锐化"
#define HGLIB_OPTION_VALUE_RHYMH_RH "\351\224\220\345\214\226"
// "进一步锐化"
#define HGLIB_OPTION_VALUE_RHYMH_JYBRH "\350\277\233\344\270\200\346\255\245\351\224\220\345\214\226"
// "模糊"
#define HGLIB_OPTION_VALUE_RHYMH_MH "\346\250\241\347\263\212"
// "进一步模糊"
#define HGLIB_OPTION_VALUE_RHYMH_JYBMH "\350\277\233\344\270\200\346\255\245\346\250\241\347\263\212"
// "去除摩尔纹"
#define HGLIB_OPTION_TITLE_QCMW "\345\216\273\351\231\244\346\221\251\345\260\224\347\272\271"
// "除网纹"
#define HGLIB_OPTION_TITLE_CWW "\351\231\244\347\275\221\347\272\271"
// "错误扩散"
#define HGLIB_OPTION_TITLE_CWKS "\351\224\231\350\257\257\346\211\251\346\225\243"
// "黑白图像噪点优化"
#define HGLIB_OPTION_TITLE_HBTXZDYH "\351\273\221\347\231\275\345\233\276\345\203\217\345\231\252\347\202\271\344\274\230\345\214\226"
// "噪点优化尺寸"
#define HGLIB_OPTION_TITLE_ZDYHCC "\345\231\252\347\202\271\344\274\230\345\214\226\345\260\272\345\257\270"
// "纸张尺寸"
#define HGLIB_OPTION_TITLE_ZZCC "\347\272\270\345\274\240\345\260\272\345\257\270"
// "A3"
#define HGLIB_OPTION_VALUE_ZZCC_A3 "A3"
// "8开"
#define HGLIB_OPTION_VALUE_ZZCC_8K "8\345\274\200"
// "A4"
#define HGLIB_OPTION_VALUE_ZZCC_A4 "A4"
// "A4横向"
#define HGLIB_OPTION_VALUE_ZZCC_A4HX "A4\346\250\252\345\220\221"
// "16开"
#define HGLIB_OPTION_VALUE_ZZCC_16K "16\345\274\200"
// "16开横向"
#define HGLIB_OPTION_VALUE_ZZCC_16KHX "16\345\274\200\346\250\252\345\220\221"
// "A5"
#define HGLIB_OPTION_VALUE_ZZCC_A5 "A5"
// "A5横向"
#define HGLIB_OPTION_VALUE_ZZCC_A5HX "A5\346\250\252\345\220\221"
// "A6"
#define HGLIB_OPTION_VALUE_ZZCC_A6 "A6"
// "A6横向"
#define HGLIB_OPTION_VALUE_ZZCC_A6HX "A6\346\250\252\345\220\221"
// "B4"
#define HGLIB_OPTION_VALUE_ZZCC_B4 "B4"
// "B5"
#define HGLIB_OPTION_VALUE_ZZCC_B5 "B5"
// "B5横向"
#define HGLIB_OPTION_VALUE_ZZCC_B5HX "B5\346\250\252\345\220\221"
// "B6"
#define HGLIB_OPTION_VALUE_ZZCC_B6 "B6"
// "B6横向"
#define HGLIB_OPTION_VALUE_ZZCC_B6HX "B6\346\250\252\345\220\221"
// "Letter"
#define HGLIB_OPTION_VALUE_ZZCC_Letter "Letter"
// "Letter横向"
#define HGLIB_OPTION_VALUE_ZZCC_LetterHX "Letter\346\250\252\345\220\221"
// "Double Letter"
#define HGLIB_OPTION_VALUE_ZZCC_DoubleLetter "Double Letter"
// "LEGAL"
#define HGLIB_OPTION_VALUE_ZZCC_LEGAL "LEGAL"
// "匹配原始尺寸"
#define HGLIB_OPTION_VALUE_ZZCC_PPYSCC "\345\214\271\351\205\215\345\216\237\345\247\213\345\260\272\345\257\270"
// "最大扫描尺寸自动裁切"
#define HGLIB_OPTION_VALUE_ZZCC_ZDSMCCZDCQ "\346\234\200\345\244\247\346\211\253\346\217\217\345\260\272\345\257\270\350\207\252\345\212\250\350\243\201\345\210\207"
// "最大扫描尺寸"
#define HGLIB_OPTION_VALUE_ZZCC_ZDSMCC "\346\234\200\345\244\247\346\211\253\346\217\217\345\260\272\345\257\270"
// "三联试卷"
#define HGLIB_OPTION_VALUE_ZZCC_SLSJ "\344\270\211\350\201\224\350\257\225\345\215\267"
// "自定义扫描区域"
#define HGLIB_OPTION_TITLE_ZDYSMQY "\350\207\252\345\256\232\344\271\211\346\211\253\346\217\217\345\214\272\345\237\237"
// "扫描区域左侧mm"
#define HGLIB_OPTION_TITLE_SMQYZCmm "\346\211\253\346\217\217\345\214\272\345\237\237\345\267\246\344\276\247\357\274\210mm\357\274\211"
// "扫描区域右侧mm"
#define HGLIB_OPTION_TITLE_SMQYYCmm "\346\211\253\346\217\217\345\214\272\345\237\237\345\217\263\344\276\247\357\274\210mm\357\274\211"
// "扫描区域上侧mm"
#define HGLIB_OPTION_TITLE_SMQYSCmm "\346\211\253\346\217\217\345\214\272\345\237\237\344\270\212\344\276\247\357\274\210mm\357\274\211"
// "扫描区域下侧mm"
#define HGLIB_OPTION_TITLE_SMQYXCmm "\346\211\253\346\217\217\345\214\272\345\237\237\344\270\213\344\276\247\357\274\210mm\357\274\211"
// "尺寸检测"
#define HGLIB_OPTION_TITLE_CCJC "\345\260\272\345\257\270\346\243\200\346\265\213"
// "扫描页面"
#define HGLIB_OPTION_TITLE_SMYM "\346\211\253\346\217\217\351\241\265\351\235\242"
// "单面"
#define HGLIB_OPTION_VALUE_SMYM_DM "\345\215\225\351\235\242"
// "双面"
#define HGLIB_OPTION_VALUE_SMYM_SM "\345\217\214\351\235\242"
// "跳过空白页(通用)"
#define HGLIB_OPTION_VALUE_SMYM_TGKBYTY "\350\267\263\350\277\207\347\251\272\347\231\275\351\241\265\357\274\210\351\200\232\347\224\250\357\274\211"
// "跳过空白页(发票纸)"
#define HGLIB_OPTION_VALUE_SMYM_TGKBYFPZ "\350\267\263\350\277\207\347\251\272\347\231\275\351\241\265\357\274\210\345\217\221\347\245\250\347\272\270\357\274\211"
// "对折"
#define HGLIB_OPTION_VALUE_SMYM_DZ "\345\257\271\346\212\230"
// "跳过空白页灵敏度"
#define HGLIB_OPTION_TITLE_TGKBYLMD "\350\267\263\350\277\207\347\251\272\347\231\275\351\241\265\347\201\265\346\225\217\345\272\246"
// "分纸强度"
#define HGLIB_OPTION_TITLE_FZQD "\345\210\206\347\272\270\345\274\272\345\272\246"
// "休眠时间"
#define HGLIB_OPTION_TITLE_XMSJ "\344\274\221\347\234\240\346\227\266\351\227\264"
// "分辨率"
#define HGLIB_OPTION_TITLE_FBL "\345\210\206\350\276\250\347\216\207"
// "画质"
#define HGLIB_OPTION_TITLE_HZ "\347\224\273\350\264\250"
// "无"
#define HGLIB_OPTION_VALUE_HZ_W "\346\227\240"
// "速度优先"
#define HGLIB_OPTION_VALUE_HZ_SDYX "\351\200\237\345\272\246\344\274\230\345\205\210"
// "画质优先"
#define HGLIB_OPTION_VALUE_HZ_HZYX "\347\224\273\350\264\250\344\274\230\345\205\210"
// "交换正反面"
#define HGLIB_OPTION_TITLE_JHZFM "\344\272\244\346\215\242\346\255\243\345\217\215\351\235\242"
// "图像拆分"
#define HGLIB_OPTION_TITLE_TXCF "\345\233\276\345\203\217\346\213\206\345\210\206"
// "自动纠偏"
#define HGLIB_OPTION_TITLE_ZDJP "\350\207\252\345\212\250\347\272\240\345\201\217"
// "启用色调曲线"
#define HGLIB_OPTION_TITLE_QYSDQX "\345\220\257\347\224\250\350\211\262\350\260\203\346\233\262\347\272\277"
// "亮度值"
#define HGLIB_OPTION_TITLE_LDZ "\344\272\256\345\272\246\345\200\274"
// "对比度"
#define HGLIB_OPTION_TITLE_DBD "\345\257\271\346\257\224\345\272\246"
// "伽马值"
#define HGLIB_OPTION_TITLE_JMZ "\344\274\275\351\251\254\345\200\274"
#define HGLIB_OPTION_TITLE_GMZ HGLIB_OPTION_TITLE_JMZ
// "照片模式"
#define HGLIB_OPTION_TITLE_ZPMS "\347\205\247\347\211\207\346\250\241\345\274\217"
// "消除黑框"
#define HGLIB_OPTION_TITLE_XCHK "\346\266\210\351\231\244\351\273\221\346\241\206"
// "深色样张"
#define HGLIB_OPTION_TITLE_SSYZ "\346\267\261\350\211\262\346\240\267\345\274\240"
// "阈值"
#define HGLIB_OPTION_TITLE_YZ "\351\230\210\345\200\274"
// "背景抗噪等级"
#define HGLIB_OPTION_TITLE_BJKZDJ "\350\203\214\346\231\257\346\212\227\345\231\252\347\255\211\347\272\247"
// "边缘缩进"
#define HGLIB_OPTION_TITLE_BYSJ "\350\276\271\347\274\230\347\274\251\350\277\233"
// "背景填充方式"
#define HGLIB_OPTION_TITLE_BJTCFS "\350\203\214\346\231\257\345\241\253\345\205\205\346\226\271\345\274\217"
// "凸多边形"
#define HGLIB_OPTION_VALUE_BJTCFS_TDBX "\345\207\270\345\244\232\350\276\271\345\275\242"
// "凹多边形"
#define HGLIB_OPTION_VALUE_BJTCFS_ADBX "\345\207\271\345\244\232\350\276\271\345\275\242"
// "防止渗透"
#define HGLIB_OPTION_TITLE_FZST "\351\230\262\346\255\242\346\270\227\351\200\217"
// "防止渗透等级"
#define HGLIB_OPTION_TITLE_FZSTDJ "\351\230\262\346\255\242\346\270\227\351\200\217\347\255\211\347\272\247"
// "弱"
#define HGLIB_OPTION_VALUE_FZSTDJ_R "\345\274\261"
// "较弱"
#define HGLIB_OPTION_VALUE_FZSTDJ_JR "\350\276\203\345\274\261"
// "一般"
#define HGLIB_OPTION_VALUE_FZSTDJ_YB "\344\270\200\350\210\254"
// "较强"
#define HGLIB_OPTION_VALUE_FZSTDJ_JQ "\350\276\203\345\274\272"
// "强"
#define HGLIB_OPTION_VALUE_FZSTDJ_Q "\345\274\272"
// "穿孔移除"
#define HGLIB_OPTION_TITLE_CKYC "\347\251\277\345\255\224\347\247\273\351\231\244"
// #"穿孔搜索范围占幅面比例"
#define HGLIB_OPTION_TITLE_CKSSFWZFMBL "\347\251\277\345\255\224\346\220\234\347\264\242\350\214\203\345\233\264\345\215\240\345\271\205\351\235\242\346\257\224\344\276\213"
// "色彩填充"
#define HGLIB_OPTION_TITLE_SCTC "\350\211\262\345\275\251\345\241\253\345\205\205"
// "超声波检测"
#define HGLIB_OPTION_TITLE_CSBJC "\350\266\205\345\243\260\346\263\242\346\243\200\346\265\213"
// "双张图片处理"
#define HGLIB_OPTION_TITLE_SZTPCL "\345\217\214\345\274\240\345\233\276\347\211\207\345\244\204\347\220\206"
// "丢弃图像并停止扫描"
#define HGLIB_OPTION_VALUE_SZTPCL_DQTXBTZSM "\344\270\242\345\274\203\345\233\276\345\203\217\345\271\266\345\201\234\346\255\242\346\211\253\346\217\217"
// "丢弃图像并继续扫描"
#define HGLIB_OPTION_VALUE_SZTPCL_DQTXBJXSM "\344\270\242\345\274\203\345\233\276\345\203\217\345\271\266\347\273\247\347\273\255\346\211\253\346\217\217"
// "上传图像并停止扫描"
#define HGLIB_OPTION_VALUE_SZTPCL_SCTXBTZSM "\344\270\212\344\274\240\345\233\276\345\203\217\345\271\266\345\201\234\346\255\242\346\211\253\346\217\217"
// "上传图像并继续扫描"
#define HGLIB_OPTION_VALUE_SZTPCL_SCTXBJXSM "\344\270\212\344\274\240\345\233\276\345\203\217\345\271\266\347\273\247\347\273\255\346\211\253\346\217\217"
// "装订检测"
#define HGLIB_OPTION_TITLE_ZDJC "\350\243\205\350\256\242\346\243\200\346\265\213"
// "扫描张数"
#define HGLIB_OPTION_TITLE_SMZS "\346\211\253\346\217\217\345\274\240\346\225\260"
// "连续扫描"
#define HGLIB_OPTION_VALUE_SMZS_LXSM "\350\277\236\347\273\255\346\211\253\346\217\217"
// "扫描指定张数"
#define HGLIB_OPTION_VALUE_SMZS_SMZDZS "\346\211\253\346\217\217\346\214\207\345\256\232\345\274\240\346\225\260"
// "扫描数量"
#define HGLIB_OPTION_TITLE_SMSL "\346\211\253\346\217\217\346\225\260\351\207\217"
// "文稿方向"
#define HGLIB_OPTION_TITLE_WGFX "\346\226\207\347\250\277\346\226\271\345\220\221"
// "0°"
#define HGLIB_OPTION_VALUE_WGFX_0 "0\302\260"
// "90°"
#define HGLIB_OPTION_VALUE_WGFX_90 "90\302\260"
// "180°"
#define HGLIB_OPTION_VALUE_WGFX_180 "180\302\260"
// "-90°"
#define HGLIB_OPTION_VALUE_WGFX__90 "-90\302\260"
// "自动文本方向识别°"
#define HGLIB_OPTION_VALUE_WGFX_ZDWBFXSB "\350\207\252\345\212\250\346\226\207\346\234\254\346\226\271\345\220\221\350\257\206\345\210\253\302\260"
// "背面旋转180°"
#define HGLIB_OPTION_TITLE_BMXZ180 "\350\203\214\351\235\242\346\227\213\350\275\254180\302\260"
// "折角检测"
#define HGLIB_OPTION_TITLE_ZJJC "\346\212\230\350\247\222\346\243\200\346\265\213"
// "折角大小"
#define HGLIB_OPTION_TITLE_ZJDX "\346\212\230\350\247\222\345\244\247\345\260\217"
// "歪斜检测"
#define HGLIB_OPTION_TITLE_WXJC "\346\255\252\346\226\234\346\243\200\346\265\213"
// "歪斜容忍度"
#define HGLIB_OPTION_TITLE_WXRRD "\346\255\252\346\226\234\345\256\271\345\277\215\345\272\246"
#endif /* __HGSCANNERLIBOPTION_H__ */

View File

@ -61,6 +61,7 @@ namespace ver_2
m_devName.clear();
m_devHandle = NULL;
m_devParams.clear();
m_scanBlankCheck = false;
m_scanTemp = false;
m_scanning = false;
m_scanEvent = NULL;
@ -1367,13 +1368,14 @@ namespace ver_2
return 0;
}
int ManagerV2::StartScan(bool temp, std::string& errInfo)
int ManagerV2::StartScan(bool blankCheck, bool temp, std::string& errInfo)
{
errInfo = "错误";
if (!m_openDevice || m_scanning)
return -1;
m_scanBlankCheck = blankCheck;
m_scanTemp = temp;
HGBase_CreateEvent(HGFALSE, HGFALSE, &m_scanEvent);
assert(NULL != m_scanEvent);
@ -1383,6 +1385,7 @@ namespace ver_2
{
HGBase_DestroyEvent(m_scanEvent);
m_scanEvent = NULL;
m_scanBlankCheck = false;
m_scanTemp = false;
return -1;
}
@ -1406,6 +1409,7 @@ namespace ver_2
HGBase_WaitEvent(m_scanEvent);
HGBase_DestroyEvent(m_scanEvent);
m_scanEvent = NULL;
m_scanBlankCheck = false;
m_scanTemp = false;
m_scanning = false;
@ -4124,6 +4128,10 @@ namespace ver_2
HGBase_CreateImageFromData(data, &imgInfo, NULL, 0, HGBASE_IMGORIGIN_TOP, &img);
if (NULL != img)
{
HGBool blank = HGFALSE;
if (p->m_scanBlankCheck)
HGImgProc_ImageBlankCheck(img, NULL, &blank);
HGBase_EnterLock(p->m_lock);
std::string imagePath;
int ret = p->SaveImage(img, p->m_scanTemp, imagePath);
@ -4145,7 +4153,7 @@ namespace ver_2
}
if (NULL != p->m_saneImageCallback)
p->m_saneImageCallback(imagePath.c_str(), p->m_saneImageParam);
p->m_saneImageCallback(imagePath.c_str(), blank ? true : false, p->m_saneImageParam);
}
HGBase_LeaveLock(p->m_lock);

View File

@ -111,7 +111,7 @@ namespace ver_2
};
typedef void (*SaneEvent)(int code, const char *str, bool err, void* param);
typedef void (*SaneImageCallback)(const char* path, void* param);
typedef void (*SaneImageCallback)(const char* path, bool blank, void* param);
class ManagerV2 : public Manager
{
@ -201,7 +201,7 @@ namespace ver_2
// 获取当前设备名
int GetCurrDeviceName(std::string& deviceName, std::string& errInfo);
// 开始扫描
int StartScan(bool temp, std::string& errInfo);
int StartScan(bool blankCheck, bool temp, std::string& errInfo);
// 停止扫描
int StopScan(std::string& errInfo);
// 是否已经启动扫描
@ -314,6 +314,7 @@ namespace ver_2
SANE_Handle m_devHandle;
std::string m_devName;
std::vector<DeviceParamsGroup> m_devParams;
bool m_scanBlankCheck;
bool m_scanTemp;
bool m_scanning;
HGEvent m_scanEvent;

View File

@ -198,6 +198,7 @@ namespace ver_2
m_initDeviceHaveIden = false;
m_startScanIden.clear();
m_startScanHaveIden = false;
m_startScanBlankCheck = false;
m_startScanIsLocalSave = true;
m_startScanIsGetBase64 = false;
@ -896,7 +897,7 @@ namespace ver_2
}
}
void WSUser::SaneImageCallback2(const char* path, void* param)
void WSUser::SaneImageCallback2(const char* path, bool blank, void* param)
{
WSUser* p = (WSUser*)param;
@ -914,6 +915,14 @@ namespace ver_2
if (p->m_startScanHaveIden)
cJSON_AddItemToObject(retJson, "iden", cJSON_CreateString(p->m_startScanIden.c_str()));
if (p->m_startScanBlankCheck)
{
if (blank)
cJSON_AddItemToObject(retJson, "is_blank", cJSON_CreateTrue());
else
cJSON_AddItemToObject(retJson, "is_blank", cJSON_CreateFalse());
}
if (p->m_startScanIsLocalSave)
cJSON_AddItemToObject(retJson, "image_path", cJSON_CreateString(StdStringToUtf8(path).c_str()));
else
@ -2675,6 +2684,9 @@ namespace ver_2
bool findIden = false;
std::string iden = GetJsonStringValue(json, "iden", &findIden);
bool find = false;
bool blankCheck = GetJsonBoolValue(json, "blank_check", &find);
if (!find)
blankCheck = false;
bool localSave = GetJsonBoolValue(json, "local_save", &find);
if (!find)
localSave = true;
@ -2686,16 +2698,18 @@ namespace ver_2
{
m_startScanIden = iden;
m_startScanHaveIden = findIden;
m_startScanBlankCheck = blankCheck;
m_startScanIsLocalSave = localSave;
m_startScanIsGetBase64 = getBase64;
}
std::string errInfo;
int ret = GetManager()->StartScan(!localSave, errInfo);
int ret = GetManager()->StartScan(blankCheck, !localSave, errInfo);
if (0 != ret)
{
m_startScanIden.clear();
m_startScanHaveIden = false;
m_startScanBlankCheck = false;
m_startScanIsLocalSave = true;
m_startScanIsGetBase64 = false;
}
@ -2730,6 +2744,7 @@ namespace ver_2
m_startScanIden.clear();
m_startScanHaveIden = false;
m_startScanBlankCheck = false;
m_startScanIsLocalSave = true;
m_startScanIsGetBase64 = false;

View File

@ -27,7 +27,7 @@ namespace ver_2
private:
static void SaneEvent2(int code, const char* str, bool err, void* param);
static void SaneImageCallback2(const char* path, void* param);
static void SaneImageCallback2(const char* path, bool blank, void* param);
bool ShakeHand(const std::string& head);
void Pong();
bool SendResponse(const HGByte* data, HGUInt size, HGBool text);
@ -90,6 +90,7 @@ namespace ver_2
bool m_initDeviceHaveIden;
std::string m_startScanIden;
bool m_startScanHaveIden;
bool m_startScanBlankCheck;
bool m_startScanIsLocalSave;
bool m_startScanIsGetBase64;
};