diff --git a/hgdriver/hgdev/hg_scanner_200.cpp b/hgdriver/hgdev/hg_scanner_200.cpp index 91f6312..3e4d93f 100644 --- a/hgdriver/hgdev/hg_scanner_200.cpp +++ b/hgdriver/hgdev/hg_scanner_200.cpp @@ -646,7 +646,7 @@ void hg_scanner_200::image_process(std::shared_ptr& buffer) /////////////////////////////////// - if (image_prc_param_.bits.rid_red && img_conf_.pixtype == COLOR_MODE_24_BITS) + if (img_conf_.multi_output_red && img_conf_.pixtype == COLOR_MODE_24_BITS) { err = hg_imgproc::multi_out_red(handle); //HG_LOGHG_LOG_LEVEL_DEBUG_INFO,"多流出红开启\r\n"); @@ -655,7 +655,7 @@ void hg_scanner_200::image_process(std::shared_ptr& buffer) { hg_imgproc::sharpenType(handle); } - if (image_prc_param_.bits.split) + if (img_conf_.splitImage) { int colormode=1; if(img_conf_.filter == RID_COLOR_NONE) @@ -672,7 +672,7 @@ void hg_scanner_200::image_process(std::shared_ptr& buffer) //HG_LOGHG_LOG_LEVEL_DEBUG_INFO,"图像拆分开启\r\n"); } - if (!image_prc_param_.bits.split || !image_prc_param_.bits.rid_red || !is_multiout) + if (!img_conf_.splitImage || !img_conf_.multi_output_red || !is_multiout) { if(img_conf_.automaticcolor) { @@ -965,7 +965,7 @@ else ic.is_autodiscradblank_vince = image_prc_param_.bits.page == PAGE_OMIT_EMPTY_RECEIPT; ic.is_switchfrontback = image_prc_param_.bits.exchange; ic.autodescrew = image_prc_param_.bits.automatic_skew; - //ic.multi_output_red = image_prc_param_.bits.rid_red; + ic.multi_output_red = image_prc_param_.bits.rid_red; ic.hsvcorrect = image_prc_param_.bits.rid_answer_red; ic.sharpen = image_prc_param_.bits.sharpen; @@ -1026,7 +1026,11 @@ else ic.cropRect.x = custom_area_lt_x_ *ic.resolution_dst /25.4; ic.cropRect.y = custom_area_lt_y_ *ic.resolution_dst /25.4; - ic.multiOutput = MultiOutput::Unused; //暂无参数 + ic.multiOutput = (MultiOutput)image_prc_param_.bits.multi_out; + if (!is_multiout) + { + ic.multiOutput = MultiOutput::Unused; + } ic.normalCrop = image_prc_param_.bits.dark_sample; ic.dogeardistabce = fractate_level_; ic.fadeback = image_prc_param_.bits.erase_bakground; diff --git a/hgdriver/hgdev/hg_scanner_300.cpp b/hgdriver/hgdev/hg_scanner_300.cpp index 2f663a5..6747719 100644 --- a/hgdriver/hgdev/hg_scanner_300.cpp +++ b/hgdriver/hgdev/hg_scanner_300.cpp @@ -629,7 +629,7 @@ void hg_scanner_300::image_process(std::shared_ptr& buffer) { hg_imgproc::sharpenType(handle); } - if (image_prc_param_.bits.split) + if (img_conf_.splitImage) { int colormode=1; if(img_conf_.filter == RID_COLOR_NONE) @@ -646,7 +646,7 @@ void hg_scanner_300::image_process(std::shared_ptr& buffer) //HG_LOGHG_LOG_LEVEL_DEBUG_INFO,"图像拆分开启\r\n"); } - if (!image_prc_param_.bits.split || !image_prc_param_.bits.rid_red || !is_multiout) + if (!img_conf_.splitImage || !img_conf_.multi_output_red || !is_multiout) { if(img_conf_.automaticcolor) { @@ -662,7 +662,7 @@ void hg_scanner_300::image_process(std::shared_ptr& buffer) //多流输出最后处理 if (is_multiout) { - int multi_out = image_prc_param_.bits.multi_out; + int multi_out = img_conf_.multiOutput; err = hg_imgproc::multi_out(handle,multi_out); } hg_imgproc::final(handle); @@ -947,7 +947,11 @@ void hg_scanner_300::writedown_image_configuration(void) ic.cropRect.width = width; ic.cropRect.x = custom_area_lt_x_ *ic.resolution_dst /25.4; ic.cropRect.y = custom_area_lt_y_ *ic.resolution_dst /25.4; - ic.multiOutput = MultiOutput::Unused; //暂无参数 + ic.multiOutput = (MultiOutput)image_prc_param_.bits.multi_out; + if (!is_multiout) + { + ic.multiOutput = MultiOutput::Unused; + } ic.normalCrop = image_prc_param_.bits.dark_sample; ic.dogeardistabce = fractate_level_; ic.fadeback = image_prc_param_.bits.erase_bakground; diff --git a/hgdriver/hgdev/hg_scanner_302.cpp b/hgdriver/hgdev/hg_scanner_302.cpp index 0943aa0..19ca1fb 100644 --- a/hgdriver/hgdev/hg_scanner_302.cpp +++ b/hgdriver/hgdev/hg_scanner_302.cpp @@ -782,7 +782,7 @@ void hg_scanner_302::image_process(std::shared_ptr& buff) /////////////////////////////////// - if (image_prc_param_.bits.rid_red && img_conf_.pixtype == COLOR_MODE_24_BITS) + if (img_conf_.multi_output_red && img_conf_.pixtype == COLOR_MODE_24_BITS) { err = hg_imgproc::multi_out_red(handle); //printf("多流出红开启\r\n"); @@ -799,10 +799,10 @@ void hg_scanner_302::image_process(std::shared_ptr& buff) err = hg_imgproc::fadeback(handle,img_conf_.fadebackrange,img_conf_.is_duplex); } - if (image_prc_param_.bits.rid_red && img_conf_.pixtype == COLOR_MODE_24_BITS) + if (img_conf_.multi_output_red && img_conf_.pixtype == COLOR_MODE_24_BITS) err = hg_imgproc::multi_out_red(handle); - if (image_prc_param_.bits.split) + if (img_conf_.splitImage) { //split3399_++; int colormode=1; @@ -817,7 +817,7 @@ void hg_scanner_302::image_process(std::shared_ptr& buff) ,img_conf_.is_duplex); } - if (!image_prc_param_.bits.split || !image_prc_param_.bits.rid_red || !is_multiout) + if (!img_conf_.splitImage || !img_conf_.multi_output_red || !is_multiout) { if(img_conf_.automaticcolor) { @@ -977,7 +977,7 @@ int hg_scanner_302::writedown_image_configuration(void) ic.is_autodiscradblank_vince = image_prc_param_.bits.page == PAGE_OMIT_EMPTY_RECEIPT; ic.is_switchfrontback = image_prc_param_.bits.exchange; ic.autodescrew = image_prc_param_.bits.automatic_skew; - //ic.multi_output_red = image_prc_param_.bits.rid_red; //必须屏蔽,否则超时,未知错误不可描述。 + ic.multi_output_red = image_prc_param_.bits.rid_red; ic.hsvcorrect = image_prc_param_.bits.rid_answer_red; ic.sharpen = image_prc_param_.bits.sharpen; ic.enhance_color = image_prc_param_.bits.rid_color; @@ -1025,7 +1025,12 @@ int hg_scanner_302::writedown_image_configuration(void) ic.cropRect.x = custom_area_lt_x_ *ic.resolution_dst /25.4; ic.cropRect.y = custom_area_lt_y_ *ic.resolution_dst /25.4; } - ic.multiOutput = (MultiOutput)image_prc_param_.bits.multi_out; + ic.multiOutput = (MultiOutput)image_prc_param_.bits.multi_out; + if (is_multiout) + { + ic.multiOutput = MultiOutput::Unused; + } + ic.normalCrop = image_prc_param_.bits.dark_sample; ic.dogeardistabce = fractate_level_; ic.fadeback = image_prc_param_.bits.erase_bakground; diff --git a/hgdriver/hgdev/hg_scanner_400.cpp b/hgdriver/hgdev/hg_scanner_400.cpp index 6764eaa..58d291d 100644 --- a/hgdriver/hgdev/hg_scanner_400.cpp +++ b/hgdriver/hgdev/hg_scanner_400.cpp @@ -611,7 +611,7 @@ void hg_scanner_400::image_process(std::shared_ptr& buffer) /////////////////////////////////// - if (image_prc_param_.bits.rid_red && img_conf_.pixtype == COLOR_MODE_24_BITS) + if (img_conf_.multi_output_red && img_conf_.pixtype == COLOR_MODE_24_BITS) { err = hg_imgproc::multi_out_red(handle); //printf("多流出红开启\r\n"); @@ -623,7 +623,7 @@ void hg_scanner_400::image_process(std::shared_ptr& buffer) hg_imgproc::sharpenType(handle); } - if (image_prc_param_.bits.split) + if (img_conf_.splitImage) { int colormode=1; if(img_conf_.filter == RID_COLOR_NONE) @@ -641,7 +641,7 @@ void hg_scanner_400::image_process(std::shared_ptr& buffer) //VLOG_MINI_1(LOG_LEVEL_DEBUG_INFO, "图像拆分开启:%s\n",hg_scanner_err_name(ret)); } - if (!image_prc_param_.bits.split || !image_prc_param_.bits.rid_red || !is_multiout) + if (!img_conf_.splitImage || !img_conf_.multi_output_red || !is_multiout) { if(img_conf_.automaticcolor) { @@ -906,7 +906,7 @@ void hg_scanner_400::writedown_image_configuration(void) ic.is_autodiscradblank_vince = image_prc_param_.bits.page == PAGE_OMIT_EMPTY_RECEIPT; ic.is_switchfrontback = image_prc_param_.bits.exchange; ic.autodescrew = image_prc_param_.bits.automatic_skew; - //ic.multi_output_red = image_prc_param_.bits.rid_red; + ic.multi_output_red = image_prc_param_.bits.rid_red; ic.hsvcorrect = image_prc_param_.bits.rid_answer_red; ic.sharpen = image_prc_param_.bits.sharpen; @@ -961,7 +961,11 @@ void hg_scanner_400::writedown_image_configuration(void) ic.cropRect.x = custom_area_lt_x_ *ic.resolution_dst /25.4; ic.cropRect.y = custom_area_lt_y_ *ic.resolution_dst /25.4; - ic.multiOutput = MultiOutput::Unused; //暂无参数 + ic.multiOutput = (MultiOutput)image_prc_param_.bits.multi_out; + if (!is_multiout) + { + ic.multiOutput = MultiOutput::Unused; + } ic.normalCrop = image_prc_param_.bits.dark_sample; ic.dogeardistabce = fractate_level_; ic.fadeback = image_prc_param_.bits.erase_bakground; diff --git a/hgdriver/hgdev/hg_scanner_402.cpp b/hgdriver/hgdev/hg_scanner_402.cpp index 8a0d976..a9a5696 100644 --- a/hgdriver/hgdev/hg_scanner_402.cpp +++ b/hgdriver/hgdev/hg_scanner_402.cpp @@ -787,7 +787,7 @@ void hg_scanner_402::image_process(std::shared_ptr& buff) /////////////////////////////////// - if (image_prc_param_.bits.rid_red && img_conf_.pixtype == COLOR_MODE_24_BITS) + if (img_conf_.multi_output_red && img_conf_.pixtype == COLOR_MODE_24_BITS) { err = hg_imgproc::multi_out_red(handle); //printf("多流出红开启\r\n"); @@ -799,15 +799,15 @@ void hg_scanner_402::image_process(std::shared_ptr& buff) hg_imgproc::sharpenType(handle); } - if(image_prc_param_.bits.erase_bakground) + if(img_conf_.fadeback) { err = hg_imgproc::fadeback(handle,img_conf_.fadebackrange,img_conf_.is_duplex); } - if (image_prc_param_.bits.rid_red && img_conf_.pixtype == COLOR_MODE_24_BITS) + if (img_conf_.multi_output_red && img_conf_.pixtype == COLOR_MODE_24_BITS) err = hg_imgproc::multi_out_red(handle); - if (image_prc_param_.bits.split) + if (img_conf_.splitImage) { //split3399_++; int colormode=1; @@ -822,7 +822,7 @@ void hg_scanner_402::image_process(std::shared_ptr& buff) ,img_conf_.is_duplex); } - if (!image_prc_param_.bits.split || !image_prc_param_.bits.rid_red || !is_multiout) + if (!img_conf_.splitImage || !img_conf_.multi_output_red|| !is_multiout) { if(img_conf_.automaticcolor) { @@ -841,7 +841,7 @@ void hg_scanner_402::image_process(std::shared_ptr& buff) //多流输出最后处理 if (is_multiout) { - int multi_out = image_prc_param_.bits.multi_out; + int multi_out = img_conf_.multiOutput; err = hg_imgproc::multi_out(handle,multi_out); } hg_imgproc::final(handle); @@ -982,7 +982,7 @@ int hg_scanner_402::writedown_image_configuration(void) ic.is_autodiscradblank_vince = image_prc_param_.bits.page == PAGE_OMIT_EMPTY_RECEIPT; ic.is_switchfrontback = image_prc_param_.bits.exchange; ic.autodescrew = image_prc_param_.bits.automatic_skew; - //ic.multi_output_red = image_prc_param_.bits.rid_red; //必须屏蔽,否则超时,未知错误不可描述。 + ic.multi_output_red = image_prc_param_.bits.rid_red; ic.hsvcorrect = image_prc_param_.bits.rid_answer_red; ic.sharpen = image_prc_param_.bits.sharpen; ic.enhance_color = image_prc_param_.bits.rid_color; @@ -1031,6 +1031,11 @@ int hg_scanner_402::writedown_image_configuration(void) ic.cropRect.y = custom_area_lt_y_ *ic.resolution_dst /25.4; } ic.multiOutput = (MultiOutput)image_prc_param_.bits.multi_out; + if (!is_multiout) + { + ic.multiOutput = MultiOutput::Unused; + } + ic.normalCrop = image_prc_param_.bits.dark_sample; ic.dogeardistabce = fractate_level_; ic.fadeback = image_prc_param_.bits.erase_bakground; @@ -1042,7 +1047,7 @@ int hg_scanner_402::writedown_image_configuration(void) ic.filter = 3; else { - ic.filter = filter_clr[image_prc_param_.bits.rid_color]; + ic.filter = filter_clr[ic.enhance_color]; // if(ic.filter != 3) // ic.pixtype = 2; @@ -1052,11 +1057,11 @@ int hg_scanner_402::writedown_image_configuration(void) } //多留输出的处理 - if (image_prc_param_.bits.multi_out == MULTI_GRAY_AND_BW && is_multiout) + if (ic.multiOutput == MULTI_GRAY_AND_BW && is_multiout) { ic.pixtype = 1; } - else if ((image_prc_param_.bits.multi_out == MULTI_OUT_ALL ||image_prc_param_.bits.multi_out == MULTI_COLOR_AND_GRAY||image_prc_param_.bits.multi_out == MULTI_COLOR_AND_BW) && is_multiout) + else if ((ic.multiOutput == MULTI_OUT_ALL ||ic.multiOutput == MULTI_COLOR_AND_GRAY||ic.multiOutput == MULTI_COLOR_AND_BW) && is_multiout) { ic.pixtype = 2;