From 3c7182cfcdab239de69e8e88ace765601aba9044 Mon Sep 17 00:00:00 2001 From: gb <741021719@qq.com> Date: Wed, 7 Sep 2022 15:48:41 +0800 Subject: [PATCH] =?UTF-8?q?TWAIN=E6=B7=BB=E5=8A=A0=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E5=B1=9E=E6=80=A7=E6=94=AF=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sane/s2t_api.h | 8 ++++++++ sane/scanner.cpp | 16 ++++++++++++++++ sane/scanner.h | 8 ++++++++ twain/twain/huagaods.cpp | 17 ++++++++++++++++- 4 files changed, 48 insertions(+), 1 deletion(-) diff --git a/sane/s2t_api.h b/sane/s2t_api.h index 7690601..6ea16c2 100644 --- a/sane/s2t_api.h +++ b/sane/s2t_api.h @@ -227,6 +227,14 @@ struct __declspec(novtable) ISaneInvoker : public IRef SANE_OPTION_ID_API(is_check_skew); // 歪斜检测 SANE_OPTION_ID_API(skew_range); // 歪斜容忍度 SANE_OPTION_ID_API(black_white_threshold); // 二值化图像阈值 + SANE_OPTION_ID_API(is_photo_mode); // 照片模式 + SANE_OPTION_ID_API(double_feed_handle); // 双张图片处理 + SANE_OPTION_ID_API(scan_when_paper_on); // 待纸扫描 + SANE_OPTION_ID_API(feed_strength); // 分纸强度 + SANE_OPTION_ID_API(power_scheme); // 休眠时间 + SANE_OPTION_ID_API(is_auto_strength); // 自动搓纸强度 + SANE_OPTION_ID_API(feed_strength_value); // 自动搓纸强度设定值 + SANE_OPTION_ID_API(is_reverse_bw); // 黑白图像反色输出 // SANE-ex option ID: SANE_OPTION_ID_API_EX(multiout_type); // int diff --git a/sane/scanner.cpp b/sane/scanner.cpp index d1f71c6..ceb6f4e 100644 --- a/sane/scanner.cpp +++ b/sane/scanner.cpp @@ -372,6 +372,14 @@ int scanner::init_options_id(void) else SET_OPT_ID(is_check_skew, WXJC, extension_none) else SET_OPT_ID(skew_range, WXRRD, extension_none) else SET_OPT_ID(black_white_threshold, HBTXYZ, extension_none) + else SET_OPT_ID(is_photo_mode, ZPMS, extension_none) + else SET_OPT_ID(double_feed_handle, SZTPCL, extension_none) + else SET_OPT_ID(scan_when_paper_on, DZSM, extension_none) + else SET_OPT_ID(feed_strength, FZQD, extension_none) + else SET_OPT_ID(power_scheme, XMSJ, extension_none) + else SET_OPT_ID(is_auto_strength, ZDCZQD, extension_none) + else SET_OPT_ID(feed_strength_value , CZYZ, extension_none) + else SET_OPT_ID(is_reverse_bw, HBTXFSSC, extension_none) op_id++; } @@ -1902,6 +1910,14 @@ SANE_OPTION_ID_IMPLEMENT(dogear_size) SANE_OPTION_ID_IMPLEMENT(is_check_skew) SANE_OPTION_ID_IMPLEMENT(skew_range) SANE_OPTION_ID_IMPLEMENT(black_white_threshold) +SANE_OPTION_ID_IMPLEMENT(is_photo_mode) +SANE_OPTION_ID_IMPLEMENT(double_feed_handle) +SANE_OPTION_ID_IMPLEMENT(scan_when_paper_on) +SANE_OPTION_ID_IMPLEMENT(feed_strength) +SANE_OPTION_ID_IMPLEMENT(power_scheme) +SANE_OPTION_ID_IMPLEMENT(is_auto_strength) +SANE_OPTION_ID_IMPLEMENT(feed_strength_value) +SANE_OPTION_ID_IMPLEMENT(is_reverse_bw) // SANE-ex option ID: SANE_OPTION_ID_IMPLEMENT(ex_multiout_type) diff --git a/sane/scanner.h b/sane/scanner.h index 6075393..7a26b71 100644 --- a/sane/scanner.h +++ b/sane/scanner.h @@ -261,6 +261,14 @@ public: SANE_OPTION_ID(is_check_skew); SANE_OPTION_ID(skew_range); SANE_OPTION_ID(black_white_threshold); // 二值化图像阈值 + SANE_OPTION_ID(is_photo_mode); // 照片模式 + SANE_OPTION_ID(double_feed_handle); // 双张图片处理 + SANE_OPTION_ID(scan_when_paper_on); // 待纸扫描 + SANE_OPTION_ID(feed_strength); // 分纸强度 + SANE_OPTION_ID(power_scheme); // 休眠时间 + SANE_OPTION_ID(is_auto_strength); // 自动搓纸强度 + SANE_OPTION_ID(feed_strength_value); // 自动搓纸强度设定值 + SANE_OPTION_ID(is_reverse_bw); // 黑白图像反色输出 // SANE-ex option ID: SANE_OPTION_ID(ex_multiout_type); // int diff --git a/twain/twain/huagaods.cpp b/twain/twain/huagaods.cpp index 7a61d95..9d957c6 100644 --- a/twain/twain/huagaods.cpp +++ b/twain/twain/huagaods.cpp @@ -123,7 +123,14 @@ enum CapTypeEx : unsigned short { CAP_EX_SANE_is_check_skew, CAP_EX_SANE_skew_range, CAP_EX_SANE_black_white_threshold, - // END for SANE豸ԭʼ͸ + CAP_EX_SANE_is_photo_mode, + CAP_EX_SANE_double_feed_handle, + CAP_EX_SANE_scan_when_paper_on, + CAP_EX_SANE_feed_strength, + CAP_EX_SANE_power_scheme, + CAP_EX_SANE_is_auto_strength, + CAP_EX_SANE_feed_strength_value, + CAP_EX_SANE_is_reverse_bw // END for SANE豸ԭʼ͸ ///////////////////////////////////////////////////////////////////////// }; enum // .twain/first.cfg: [twain-app] flow=0 @@ -2626,6 +2633,14 @@ void huagao_ds::init_support_caps_ex(void) ADD_SANE_CAP(is_check_skew); ADD_SANE_CAP(skew_range); ADD_SANE_CAP(black_white_threshold); + ADD_SANE_CAP(is_photo_mode); + ADD_SANE_CAP(double_feed_handle); + ADD_SANE_CAP(scan_when_paper_on); + ADD_SANE_CAP(feed_strength); + ADD_SANE_CAP(power_scheme); + ADD_SANE_CAP(is_auto_strength); + ADD_SANE_CAP(feed_strength_value); + ADD_SANE_CAP(is_reverse_bw); } std::wstring huagao_ds::get_config_file(void) {