code_app/sdk/scannerlib/HGScannerLib.h

499 lines
14 KiB
C
Raw Normal View History

2022-07-19 03:51:00 +00:00
#ifndef __HGSCANNERLIB_H__
#define __HGSCANNERLIB_H__
#include "HGDef.h"
HG_DECLARE_HANDLE(HGLibImage);
HG_DECLARE_HANDLE(HGLibDevice);
/* TIFFѹ<46><D1B9><EFBFBD><EFBFBD>ʽ */
#define HGLIB_TIFFCOMPRESSION_NONE 1L
#define HGLIB_TIFFCOMPRESSION_CCITTFAX4 2L
#define HGLIB_TIFFCOMPRESSION_LZW 3L
#define HGLIB_TIFFCOMPRESSION_JPEG 4L
/* <20><EFBFBD>Ȱβ<C8B0><CEB2>¼<EFBFBD> */
#define HGLIB_DEVHOTPLUG_EVENT_ARRIVE 1L
#define HGLIB_DEVHOTPLUG_EVENT_REMOVE 2L
/* <20>豸ɨ<E8B1B8><C9A8><EFBFBD>¼<EFBFBD> */
#define HGLIB_DEVSCAN_EVENT_BEGIN 1L
#define HGLIB_DEVSCAN_EVENT_END 2L
#define HGLIB_DEVSCAN_EVENT_INFO 3L
/* <20><><EFBFBD><EFBFBD> */
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define HGLIB_GROUP_NAME_BASESETTING 1L
// <20><><EFBFBD><EFBFBD>
#define HGLIB_GROUP_NAME_BRIGHTNESS 2L
// ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define HGLIB_GROUP_NAME_IMAGEPROCESS 3L
// <20><>ֽ<EFBFBD><D6BD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>
#define HGLIB_GROUP_NAME_PAPERFEEDING 4L
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
#define HGLIB_OPTION_NAME_UNKNOWN 0L
// "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_DLSC 1L
// "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_DLSCLX 2L
// "<22><>ɫģʽ"
#define HGLIB_OPTION_NAME_YSMS 3L
// "<22>ڰ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>ֵ"
#define HGLIB_OPTION_NAME_HBTXYZ 4L
// "<22>ҶȻ<D2B6><C8BB>ڰ<EFBFBD>ͼ<EFBFBD><CDBC> - <20><>ɫ"
#define HGLIB_OPTION_NAME_HDHHBTX_CS 5L
// "24λ<34><CEBB>ɫͼ<C9AB><CDBC> - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_24WCSTX_DLSCCH 6L
// "24λ<34><CEBB>ɫͼ<C9AB><CDBC> - <20><><EFBFBD><EFBFBD><E2BFA8><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_24WCSTX_DTKCH 7L
// "<22><><EFBFBD><EFBFBD><EFBFBD>Ƴ<EFBFBD>"
#define HGLIB_OPTION_NAME_BJYC 8L
// "<22><><EFBFBD><EFBFBD>ɫ<EFBFBD>ʸ<EFBFBD><CAB8><EFBFBD><EFBFBD><EFBFBD>Χ"
#define HGLIB_OPTION_NAME_BJSCFDFW 9L
// "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>"
#define HGLIB_OPTION_NAME_RHYMH 10L
// "ȥ<><C8A5>Ħ<EFBFBD><C4A6><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_QCMW 11L
// "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_CWW 12L
// "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɢ"
#define HGLIB_OPTION_NAME_CWKS 13L
// "<22>ڰ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ż<EFBFBD>"
#define HGLIB_OPTION_NAME_HBTXZDYH 14L
// "<22><><EFBFBD><EFBFBD><EFBFBD>Ż<EFBFBD><C5BB>ߴ<EFBFBD>"
#define HGLIB_OPTION_NAME_ZDYHCC 15L
// "ֽ<>ųߴ<C5B3>"
#define HGLIB_OPTION_NAME_ZZCC 16L
// "<22>Զ<EFBFBD><D4B6><EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_ZDYSMQY 17L
// "ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ࣨmm<6D><6D>"
#define HGLIB_OPTION_NAME_SMQYZCmm 18L
// "ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҳࣨmm<6D><6D>"
#define HGLIB_OPTION_NAME_SMQYYCmm 19L
// "ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϲࣨmm<6D><6D>"
#define HGLIB_OPTION_NAME_SMQYSCmm 20L
// "ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>²ࣨmm<6D><6D>"
#define HGLIB_OPTION_NAME_SMQYXCmm 21L
// "<22>ߴ<EFBFBD><DFB4><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_CCJC 22L
// "ɨ<><C9A8>ҳ<EFBFBD><D2B3>"
#define HGLIB_OPTION_NAME_SMYM 23L
// "<22><><EFBFBD><EFBFBD><EFBFBD>հ<EFBFBD>ҳ<EFBFBD><D2B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_TGKBYLMD 24L
// "<22><>ֽǿ<D6BD><C7BF>"
#define HGLIB_OPTION_NAME_FZQD 25L
// "<22><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>"
#define HGLIB_OPTION_NAME_XMSJ 26L
// "<22>ֱ<EFBFBD><D6B1><EFBFBD>"
#define HGLIB_OPTION_NAME_FBL 27L
// "<22><><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_HZ 28L
// "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_JHZFM 29L
// "ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_TXCF 30L
// "<22>Զ<EFBFBD><D4B6><EFBFBD>ƫ"
#define HGLIB_OPTION_NAME_ZDJP 31L
// "<22><><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_QYSDQX 32L
// "<22><><EFBFBD><EFBFBD>ֵ"
#define HGLIB_OPTION_NAME_LDZ 33L
// "<22>Աȶ<D4B1>"
#define HGLIB_OPTION_NAME_DBD 34L
// "٤<><D9A4>ֵ"
#define HGLIB_OPTION_NAME_GMZ 35L
// "<22><>Ƭģʽ"
#define HGLIB_OPTION_NAME_ZPMS 36L
// "<22><><EFBFBD><EFBFBD><EFBFBD>ڿ<EFBFBD>"
#define HGLIB_OPTION_NAME_XCHK 37L
// "<22><>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_SSYZ 38L
// "<22><>ֵ"
#define HGLIB_OPTION_NAME_YZ 39L
// "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>"
#define HGLIB_OPTION_NAME_BJKZDJ 40L
// "<22><>Ե<EFBFBD><D4B5><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_BYSJ 41L
// "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ"
#define HGLIB_OPTION_NAME_BJTCFS 42L
// "<22><>ֹ<EFBFBD><D6B9>͸"
#define HGLIB_OPTION_NAME_FZST 43L
// "<22><>ֹ<EFBFBD><D6B9>͸<EFBFBD>ȼ<EFBFBD>"
#define HGLIB_OPTION_NAME_FZSTDJ 44L
// "<22><><EFBFBD><EFBFBD><EFBFBD>Ƴ<EFBFBD><C6B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_CKYCZC 45L
// #"<22><><EFBFBD><EFBFBD><E0B4A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χռ<CEA7><D5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_ZCCKSSFWZFMBL 46L
// "<22><><EFBFBD><EFBFBD><EFBFBD>Ƴ<EFBFBD><C6B3><EFBFBD><EFBFBD>Ҳ<EFBFBD>"
#define HGLIB_OPTION_NAME_CKYCYC 47L
// #"<22>Ҳഩ<D2B2><E0B4A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χռ<CEA7><D5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_YCCKSSFWZFMBL 48L
// "<22><><EFBFBD><EFBFBD><EFBFBD>Ƴ<EFBFBD><C6B3><EFBFBD><EFBFBD>ϲ<EFBFBD>"
#define HGLIB_OPTION_NAME_CKYCSC 49L
// #"<22>ϲ<CFB2><E0B4A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χռ<CEA7><D5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_SCCKSSFWZFMBL 50L
// "<22><><EFBFBD><EFBFBD><EFBFBD>Ƴ<EFBFBD><C6B3><EFBFBD><EFBFBD>²<EFBFBD>"
#define HGLIB_OPTION_NAME_CKYCXC 51L
// #"<22>²ഩ<C2B2><E0B4A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χռ<CEA7><D5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_XCCKSSFWZFMBL 52L
// "ɫ<><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_SCTC 53L
// "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_CSBJC 54L
// "˫<><CBAB>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_SZTPCL 55L
// "װ<><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_ZDJC 56L
// "ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_SMZS 57L
// "ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_SMSL 58L
// "<22>ĸ巽<C4B8><E5B7BD>"
#define HGLIB_OPTION_NAME_WGFX 59L
// "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת180<38><30>"
#define HGLIB_OPTION_NAME_BMXZ180 60L
// "<22>۽Ǽ<DBBD><C7BC><EFBFBD>"
#define HGLIB_OPTION_NAME_ZJJC 61L
// "<22>۽Ǵ<DBBD>С"
#define HGLIB_OPTION_NAME_ZJDX 62L
// "<22><>б<EFBFBD><D0B1><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_NAME_WXJC 63L
// "<22><>б<EFBFBD><D0B1><EFBFBD>̶<EFBFBD>"
#define HGLIB_OPTION_NAME_WXRRD 64L
// <20>Զ<EFBFBD><D4B6><EFBFBD>ֽǿ<D6BD><C7BF>
#define HGLIB_OPTION_NAME_ZDCZQD 65L
// <20><>ֽ<EFBFBD><D6BD>ֵ
#define HGLIB_OPTION_NAME_CZYZ 66L
// <20><>ֽɨ<D6BD><C9A8>
#define HGLIB_OPTION_NAME_DZSM 67L
// <20>ڰ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫΪ<C9AB><CEAA>0 - <20><>ɫ<EFBFBD><C9AB>1 - <20><>ɫ<EFBFBD><C9AB>
#define HGLIB_OPTION_NAME_HBTXFSSC 68L
/* <20><><EFBFBD><EFBFBD>ö<EFBFBD><C3B6>ֵ */
// "<22><>"
#define HGLIB_OPTION_ENUMVALUE_DLSCLX_W 1L
// "<22><>ɫ+<2B>Ҷ<EFBFBD>+<2B>ڰ<EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_DLSCLX_CS_HD_HB 2L
// "<22><>ɫ+<2B>Ҷ<EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_DLSCLX_CS_HD 3L
// "<22><>ɫ+<2B>ڰ<EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_DLSCLX_CS_HB 4L
// "<22>Ҷ<EFBFBD>+<2B>ڰ<EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_DLSCLX_HD_HB 5L
// "24λ<34><CEBB>ɫ"
#define HGLIB_OPTION_ENUMVALUE_YSMS_24WCS 6L
// "256<35><36><EFBFBD>Ҷ<EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_YSMS_256JHD 7L
// "<22>ڰ<EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_YSMS_HB 8L
// "<22><>ɫ<EFBFBD>Զ<EFBFBD>ʶ<EFBFBD><CAB6>"
#define HGLIB_OPTION_ENUMVALUE_YSMS_YSZDSB 9L
// "<22><><EFBFBD><EFBFBD>ɫ"
#define HGLIB_OPTION_ENUMVALUE_HDHHBTX_CS_BCS 10L
// "<22><><EFBFBD><EFBFBD>ɫ"
#define HGLIB_OPTION_ENUMVALUE_HDHHBTX_CS_CHS 11L
// "<22><><EFBFBD><EFBFBD>ɫ"
#define HGLIB_OPTION_ENUMVALUE_HDHHBTX_CS_CLS 12L
// "<22><><EFBFBD><EFBFBD>ɫ"
#define HGLIB_OPTION_ENUMVALUE_HDHHBTX_CS_CHULANSE 13L
// "<22><>ɫ<EFBFBD><C9AB>ǿ"
#define HGLIB_OPTION_ENUMVALUE_HDHHBTX_CS_HSZQ 14L
// "<22><>ɫ<EFBFBD><C9AB>ǿ"
#define HGLIB_OPTION_ENUMVALUE_HDHHBTX_CS_LSZQ 15L
// "<22><>ɫ<EFBFBD><C9AB>ǿ"
#define HGLIB_OPTION_ENUMVALUE_HDHHBTX_CS_LANSEZENGQIANG 16L
// "<22><>"
#define HGLIB_OPTION_ENUMVALUE_RHYMH_W 17L
// "<22><><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_RHYMH_RH 18L
// "<22><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_RHYMH_JYBRH 19L
// "ģ<><C4A3>"
#define HGLIB_OPTION_ENUMVALUE_RHYMH_MH 20L
// "<22><>һ<EFBFBD><D2BB>ģ<EFBFBD><C4A3>"
#define HGLIB_OPTION_ENUMVALUE_RHYMH_JYBMH 21L
// "A3"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_A3 22L
// "8<><38>"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_8K 23L
// "A4"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_A4 24L
// "A4<41><34><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_A4HX 25L
// "16<31><36>"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_16K 26L
// "16<31><36><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_16KHX 27L
// "A5"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_A5 28L
// "A5<41><35><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_A5HX 29L
// "A6"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_A6 30L
// "A6<41><36><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_A6HX 31L
// "B4"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_B4 32L
// "B5"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_B5 33L
// "B5<42><35><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_B5HX 34L
// "B6"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_B6 35L
// "B6<42><36><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_B6HX 36L
// "Letter"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_Letter 37L
// "Letter<65><72><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_LetterHX 38L
// "Double Letter"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_DoubleLetter 39L
// "LEGAL"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_LEGAL 40L
// "ƥ<><C6A5>ԭʼ<D4AD>ߴ<EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_PPYSCC 41L
// "<22><><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD>ߴ<EFBFBD><DFB4>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_ZDSMCCZDCQ 42L
// "<22><><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD>ߴ<EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_ZDSMCC 43L
// "<22><><EFBFBD><EFBFBD><EFBFBD>Ծ<EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_ZZCC_SLSJ 44L
// "<22><><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_SMYM_DM 45L
// "˫<><CBAB>"
#define HGLIB_OPTION_ENUMVALUE_SMYM_SM 46L
// "<22><><EFBFBD><EFBFBD><EFBFBD>հ<EFBFBD>ҳ<EFBFBD><D2B3>ͨ<EFBFBD>ã<EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_SMYM_TGKBYTY 47L
// "<22><><EFBFBD><EFBFBD><EFBFBD>հ<EFBFBD>ҳ<EFBFBD><D2B3><EFBFBD><EFBFBD>Ʊֽ<C6B1><D6BD>"
#define HGLIB_OPTION_ENUMVALUE_SMYM_TGKBYFPZ 48L
// "<22><><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_SMYM_DZ 49L
// "<22><>"
#define HGLIB_OPTION_ENUMVALUE_HZ_W 50L
// "<22>ٶ<EFBFBD><D9B6><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_HZ_SDYX 51L
// "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_HZ_HZYX 52L
// "͹<><CDB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_BJTCFS_TDBX 53L
// "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_BJTCFS_ADBX 54L
// "<22><>"
#define HGLIB_OPTION_ENUMVALUE_FZSTDJ_R 55L
// "<22><><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_FZSTDJ_JR 56L
// "һ<><D2BB>"
#define HGLIB_OPTION_ENUMVALUE_FZSTDJ_YB 57L
// "<22><>ǿ"
#define HGLIB_OPTION_ENUMVALUE_FZSTDJ_JQ 58L
// "ǿ"
#define HGLIB_OPTION_ENUMVALUE_FZSTDJ_Q 59L
// "<22><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>ֹͣɨ<D6B9><C9A8>"
#define HGLIB_OPTION_ENUMVALUE_SZTPCL_DQTXBTZSM 60L
// "<22><><EFBFBD><EFBFBD>ͼ<EFBFBD>񲢼<EFBFBD><F1B2A2BC><EFBFBD>ɨ<EFBFBD><C9A8>"
#define HGLIB_OPTION_ENUMVALUE_SZTPCL_DQTXBJXSM 61L
// "<22>ϴ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>ֹͣɨ<D6B9><C9A8>"
#define HGLIB_OPTION_ENUMVALUE_SZTPCL_SCTXBTZSM 62L
// "<22>ϴ<EFBFBD>ͼ<EFBFBD>񲢼<EFBFBD><F1B2A2BC><EFBFBD>ɨ<EFBFBD><C9A8>"
#define HGLIB_OPTION_ENUMVALUE_SZTPCL_SCTXBJXSM 63L
// "<22><><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8>"
#define HGLIB_OPTION_ENUMVALUE_SMZS_LXSM 64L
// "ɨ<><C9A8>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_SMZS_SMZDZS 65L
// "0<><30>"
#define HGLIB_OPTION_ENUMVALUE_WGFX_0 66L
// "90<39><30>"
#define HGLIB_OPTION_ENUMVALUE_WGFX_90 67L
// "180<38><30>"
#define HGLIB_OPTION_ENUMVALUE_WGFX_180 68L
// "-90<39><30>"
#define HGLIB_OPTION_ENUMVALUE_WGFX__90 69L
// "<22>Զ<EFBFBD><D4B6>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_WGFX_ZDWBFXSB 70L
// "<22><>ֽǿ<D6BD><C7BF>-<2D><>"
#define HGLIB_OPTION_ENUMVALUE_FZQD_R 71L
// "<22><>ֽǿ<D6BD><C7BF>-һ<><D2BB>"
#define HGLIB_OPTION_ENUMVALUE_FZQD_YB 72L
// "<22><>ֽǿ<D6BD><C7BF>-ǿ"
#define HGLIB_OPTION_ENUMVALUE_FZQD_Q 73L
// "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_XMSJ_BXM 74L
// "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_XMSJ_WFZ 75L
// "ʮ<><CAAE><EFBFBD><EFBFBD>"
#define HGLIB_OPTION_ENUMVALUE_XMSJ_SFZ 76L
// "<22><>Сʱ"
#define HGLIB_OPTION_ENUMVALUE_XMSJ_BXS 77L
// "һСʱ"
#define HGLIB_OPTION_ENUMVALUE_XMSJ_YXS 78L
// "<22><>Сʱ"
#define HGLIB_OPTION_ENUMVALUE_XMSJ_LXS 79L
// "<22><>Сʱ"
#define HGLIB_OPTION_ENUMVALUE_XMSJ_SXS 80L
/* <20><><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD> */
#define HGLIB_OPTION_VALUETYPE_INT 1L
#define HGLIB_OPTION_VALUETYPE_ENUM 2L
#define HGLIB_OPTION_VALUETYPE_DOUBLE 3L
#define HGLIB_OPTION_VALUETYPE_BOOL 4L
/* <20><><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>Χ<EFBFBD><CEA7><EFBFBD><EFBFBD> */
#define HGLIB_OPTION_VALUERANGETYPE_NULL 0L
#define HGLIB_OPTION_VALUERANGETYPE_INTLIST 1L
#define HGLIB_OPTION_VALUERANGETYPE_ENUMLIST 2L
#define HGLIB_OPTION_VALUERANGETYPE_DOUBLELIST 3L
#define HGLIB_OPTION_VALUERANGETYPE_INTRANGE 4L
#define HGLIB_OPTION_VALUERANGETYPE_DOUBLERANGE 5L
2022-07-19 03:51:00 +00:00
typedef struct
{
HGUInt size; /* <20><EFBFBD><E1B9B9><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>Ϊsizeof(HGLibSaveImageParam) */
HGUInt jpegQuality; /* jpeg<65><67><EFBFBD><EFBFBD>Ч, 0-100 */
HGUInt tiffCompression; /* tiff<66><66><EFBFBD><EFBFBD>Ч, HGLIB_TIFFCOMPRESSION_* */
HGUInt tiffJpegQuality; /* tiff<66><66>HGLIB_TIFFCOMPRESSION_JPEG<45><47><EFBFBD><EFBFBD>Ч, 0-100 */
HGBool ocr; /* <20>Ƿ<EFBFBD>OCR<43><52>pdf<64><66>ofd<66><64>ʽ<EFBFBD><CABD>Ч */
}HGLibSaveImageParam;
typedef struct
{
HGInt* value;
HGUInt count;
}HGLibDeviceIntValueList;
typedef struct
{
HGUInt* value;
2022-07-19 03:51:00 +00:00
HGUInt count;
}HGLibDeviceEnumValueList;
2022-07-19 03:51:00 +00:00
typedef struct
{
HGDouble* value;
HGUInt count;
}HGLibDeviceDoubleValueList;
typedef struct
{
HGInt minValue;
HGInt maxValue;
}HGLibDeviceIntValueRange;
typedef struct
{
HGDouble minValue;
HGDouble maxValue;
}HGLibDeviceDoubleValueRange;
typedef struct
{
HGUInt option; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20>μ<EFBFBD>HGLIB_OPTION_NAME_* */
2022-08-18 10:42:57 +00:00
HGUInt type; /* ֵ<><D6B5><EFBFBD><EFBFBD>, <20>μ<EFBFBD>HGLIB_OPTION_VALUETYPE_* */
2022-08-18 10:42:57 +00:00
union
{
HGInt intValue;
HGUInt enumValue;
2022-08-18 10:42:57 +00:00
HGDouble doubleValue;
HGBool boolValue;
};
HGUInt rangeType; /* ֵ<><D6B5>Χ<EFBFBD><CEA7><EFBFBD><EFBFBD>, <20>μ<EFBFBD>HGLIB_OPTION_VALUERANGETYPE_* */
2022-07-19 03:51:00 +00:00
union
{
HGLibDeviceIntValueList intValueList;
HGLibDeviceEnumValueList enumValueList;
2022-07-19 03:51:00 +00:00
HGLibDeviceDoubleValueList doubleValueList;
HGLibDeviceIntValueRange intValueRange;
HGLibDeviceDoubleValueRange doubleValueRange;
};
}HGLibDeviceParam;
2022-07-19 03:51:00 +00:00
typedef struct
{
HGUInt group; /* <20><><EFBFBD><EFBFBD>, <20>μ<EFBFBD>HGLIB_GROUP_NAME_* */
HGLibDeviceParam* param;
2022-07-19 03:51:00 +00:00
HGUInt paramCount;
}HGLibDeviceParamGroup;
2022-07-19 03:51:00 +00:00
/* <20><EFBFBD>Ȱβ<C8B0><CEB2>ص<EFBFBD>
* event: HGLIB_DEVHOTPLUG_EVENT_*
* deviceName: <EFBFBD><EFBFBD><EFBFBD>
* param: <EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
typedef void (*HGLibDeviceHotPlugEventFunc)(HGUInt event, const HGChar *deviceName, HGPointer param);
/* <20>豸ɨ<E8B1B8><C9A8><EFBFBD>¼<EFBFBD><C2BC>ص<EFBFBD>
* device: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* event: HGLIB_DEVSCAN_EVENT_*
* err: <EFBFBD>Ƿ<EFBFBD><EFBFBD>Ǵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ, HGLIB_DEVSCAN_EVENT_INFO<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч
* info: ɨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ, HGLIB_DEVSCAN_EVENT_INFO<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч
* param: <EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
typedef void (*HGLibDeviceScanEventFunc)(HGLibDevice device, HGUInt event, HGBool err, const HGChar *info, HGPointer param);
/* <20>豸ɨ<E8B1B8><C9A8>ͼ<EFBFBD><CDBC><EFBFBD>ص<EFBFBD>
* device: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* image: ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>HGLib_ReleaseImage<EFBFBD>ͷ<EFBFBD>, <EFBFBD>ص<EFBFBD>ִ<EFBFBD>к<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><EFBFBD>ͷ<EFBFBD>
* param: <EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
typedef void (*HGLibDeviceScanImageFunc)(HGLibDevice device, HGLibImage image, HGPointer param);
/* <20><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC> */
HGEXPORT HGLibImage HGAPI HGLib_LoadImage(const HGChar *filePath);
/* <20><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC> */
HGEXPORT HGBool HGAPI HGLib_SaveImage(HGLibImage image, const HGChar* savePath, const HGLibSaveImageParam* saveParam);
/* <20>ͷ<EFBFBD>ͼ<EFBFBD><CDBC> */
HGEXPORT HGBool HGAPI HGLib_ReleaseImage(HGLibImage image);
/* <20><>ʼ<EFBFBD><CABC>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD> */
HGEXPORT HGBool HGAPI HGLib_InitDevice(HGLibDeviceHotPlugEventFunc func, HGPointer param);
/* <20><><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD> */
HGEXPORT HGBool HGAPI HGLib_DeinitDevice();
/* <20><>ȡɨ<C8A1><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD> */
2022-07-19 09:09:52 +00:00
HGEXPORT HGChar** HGAPI HGLib_GetDeviceNameList();
2022-07-19 03:51:00 +00:00
/* <20><><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD> */
HGEXPORT HGBool HGAPI HGLib_ReleaseDeviceNameList(HGChar** deviceName);
/* <20><><EFBFBD><EFBFBD><EFBFBD>豸 */
HGEXPORT HGLibDevice HGAPI HGLib_OpenDevice(const HGChar *deviceName);
/* <20>ر<EFBFBD><D8B1>豸 */
HGEXPORT HGBool HGAPI HGLib_CloseDevice(HGLibDevice device);
/* <20><>ȡ<EFBFBD><EFBFBD><E8B1B8><EFBFBD>к<EFBFBD> */
HGEXPORT HGBool HGAPI HGLib_GetDeviceSN(HGLibDevice device, HGChar *sn, HGUInt maxLen);
/* <20><>ȡ<EFBFBD><EFBFBD>̼<EFBFBD><CCBC><EFBFBD><E6B1BE>*/
HGEXPORT HGBool HGAPI HGLib_GetDeviceFWVersion(HGLibDevice device, HGChar* fwVersion, HGUInt maxLen);
2022-07-19 03:51:00 +00:00
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD> */
HGEXPORT HGBool HGAPI HGLib_SetDeviceParam(HGLibDevice device, HGUInt option, const HGVoid *data);
2022-07-19 03:51:00 +00:00
/* <20><>ȡ<EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD> */
HGEXPORT HGLibDeviceParamGroup* HGAPI HGLib_GetDeviceParamGroupList(HGLibDevice device, HGUInt *count);
HGEXPORT HGLibDeviceParam* HGAPI HGLib_GetDeviceParam(HGLibDevice device, HGUInt option);
2022-07-19 03:51:00 +00:00
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD> */
HGEXPORT HGBool HGAPI HGLib_ReleaseDeviceParamGroupList(HGLibDeviceParamGroup* paramGroup, HGUInt count);
HGEXPORT HGBool HGAPI HGLib_ReleaseDeviceParam(HGLibDeviceParam* param);
2022-07-19 03:51:00 +00:00
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD> */
HGEXPORT HGBool HGAPI HGLib_ResetDeviceParam(HGLibDevice device);
/* <20><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ֽ */
HGEXPORT HGBool HGAPI HGLib_DeviceIsPaperOn(HGLibDevice device);
2022-07-19 03:51:00 +00:00
/* <20><>ʼɨ<CABC><C9A8> */
HGEXPORT HGBool HGAPI HGLib_StartDeviceScan(HGLibDevice device, HGLibDeviceScanEventFunc eventFunc, HGPointer eventParam,
HGLibDeviceScanImageFunc imageFunc, HGPointer imageParam);
/* ֹͣɨ<D6B9><C9A8> */
HGEXPORT HGBool HGAPI HGLib_StopDeviceScan(HGLibDevice device);
#endif /* __HGSCANNERLIB_H__ */