diff --git a/sane/s2t_api.h b/sane/s2t_api.h index 5c2d756..75e921a 100644 --- a/sane/s2t_api.h +++ b/sane/s2t_api.h @@ -259,7 +259,8 @@ struct __declspec(novtable) ISaneInvoker : public IRef SANE_OPTION_ID_API(is_erase_hole_b); // 穿孔移除 - 下 SANE_OPTION_ID_API(search_hole_range_b); // 穿孔搜索范围 - 下 SANE_OPTION_ID_API(fold_direction); // 对折模式 - + SANE_OPTION_ID_API(discardblank); // 跳过空白页 + // SANE-ex option ID: SANE_OPTION_ID_API_EX(multiout_type); // int SANE_OPTION_ID_API_EX(auto_color_type); // int diff --git a/sane/scanner.cpp b/sane/scanner.cpp index f432c37..82ebc9f 100644 --- a/sane/scanner.cpp +++ b/sane/scanner.cpp @@ -205,6 +205,7 @@ namespace callback , {SANE_STD_OPT_NAME_WAIT_TO_SCAN , OPTION_TITLE_DZSM} , {SANE_STD_OPT_NAME_FOLD_TYPE , OPTION_TITLE_DZMS} , {SANE_STD_OPT_NAME_COLOR_CORRECTION , OPTION_TITLE_SPJZ} + , {SANE_STD_OPT_NAME_DISCARDBLANK , OPTION_TITLE_TGKBY} }, g_discard[] = { {SANE_STD_OPT_NAME_REVERSE_01 , "\351\273\221\347\231\275\345\233\276\345\203\217\345\217\215\350\211\262\350\276\223\345\207\272\357\274\210\346\255\243\345\270\270\351\242\234\350\211\262\344\270\272\357\274\2320-\351\273\221\350\211\262\357\274\2331-\347\231\275\350\211\262\357\274\211"} // 姒涙垹娅ч崶鎯у剼閸欏秷澹婃潏鎾冲毉閿涘牊顒滅敮鎼侇杹閼硅弓璐熼敍?-姒涙垼澹婇敍?-閻у€熷閿? , {SANE_STD_OPT_NAME_FILTER , "\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"} // 閻忔澘瀹抽幋鏍拨閻ц棄娴橀崓?- 闂勩倛澹? @@ -1166,6 +1167,7 @@ int scanner::init_options_id(void) else SET_OPT_ID(fold_direction, FOLD_TYPE, extension_none) else SET_OPT_ID(color_correction, COLOR_CORRECTION, extension_none) else SET_OPT_ID(language, LANGUAGE, extension_none) + else SET_OPT_ID(discardblank, DISCARDBLANK, extension_none) op_id++; } @@ -3211,6 +3213,7 @@ SANE_OPTION_ID_IMPLEMENT(search_hole_range_t) SANE_OPTION_ID_IMPLEMENT(is_erase_hole_b) SANE_OPTION_ID_IMPLEMENT(search_hole_range_b) SANE_OPTION_ID_IMPLEMENT(fold_direction) +SANE_OPTION_ID_IMPLEMENT(discardblank) // SANE-ex option ID: SANE_OPTION_ID_IMPLEMENT(ex_multiout_type) diff --git a/sane/scanner.h b/sane/scanner.h index 982ff43..2e144ca 100644 --- a/sane/scanner.h +++ b/sane/scanner.h @@ -305,6 +305,7 @@ public: SANE_OPTION_ID(is_erase_hole_b); // 穿孔移除 - 下 SANE_OPTION_ID(search_hole_range_b); // 穿孔搜索范围 - 下 SANE_OPTION_ID(fold_direction); // 对折模式 + SANE_OPTION_ID(discardblank); // 跳过空白页 // SANE-ex option ID: SANE_OPTION_ID(ex_multiout_type); // int diff --git a/twain/twain/huagaods.cpp b/twain/twain/huagaods.cpp index 636cdd8..ba73f3f 100644 --- a/twain/twain/huagaods.cpp +++ b/twain/twain/huagaods.cpp @@ -3506,7 +3506,8 @@ void huagao_ds::init_support_caps_ex(void) ADD_SANE_CAP(SEARCH_HOLE_RANGE_B); ADD_SANE_CAP(FOLD_TYPE); ADD_SANE_CAP(COLOR_CORRECTION); - + ADD_SANE_CAP(DISCARDBLANK); + #define GET_ONLY_CAP(name, ctype, ttype) \ m_query[(CapType)SANE_OPT_ID_##name] = MsgSupport::GetCurrent; \ m_caps[(CapType)SANE_OPT_ID_##name] = [this](Msg msg, Capability& data) -> Result { \