#include "G400ScanConfig.h" G400ScanConfig::G400ScanConfig(GScanCap& gcap) { cfg = { 0 }; cfg.params.doubleFeeded = gcap.hardwarecaps.en_doublefeed == 0 ? 0 : 1; cfg.params.dpi = G400_DPI::G400_D200;//gcap.resolution_dst <= 200.0f ? G400_DPI::G400_D200 : (gcap.resolution_dst <= 300.0f ? G400_DPI::G400_D300 : G400_DPI::G400_D600); cfg.params.enableLed = 1; if (gcap.filter != 3 || gcap.enhance_color||gcap.hsvFilter!=0||gcap.hsvcorrect!=0||gcap.fadeback!=0) cfg.params.isColor = 1; else cfg.params.isColor = SupPixelTypes[gcap.pixtype]; //cfg.params.isColor = 1; #ifdef UV cfg.params.enableUV = gcap.hardwarecaps.en_uv;//gcap.hardwarecaps.en_stapledetect==0?0:1; #else cfg.params.enableUV = 0; #endif cfg.params.isCorrect = 1;//1 机器校正 PaperStatus ps = { gcap.papertype,gcap.paperAlign }; cfg.params.pageSize = SupPaperTyps[ps]; CSize size; #ifdef G300 size = PaperSize.GetPaperSize(TwSS::A4, 200.0f, gcap.paperAlign);//G300 最大支持A4幅面 #else size = PaperSize.GetPaperSize(gcap.papertype, 200.0f, gcap.paperAlign); #endif// G300 cfg.params.dstHeight = (int)((size.cy+200)/100); cfg.params.sizedetect = gcap.en_sizecheck; //cfg.params.slow_moire = true; cfg.params.reversed1 = cfg.params.reversed2 = cfg.params.lutmode = 0; } G400ScanConfig::~G400ScanConfig() { } unsigned int G400ScanConfig::GetData() { return cfg.value; } G400AndroidScanConfig::G400AndroidScanConfig(GScanCap& gcap) { cfg = { 0 }; cfg.params.doubleFeeded = gcap.hardwarecaps.en_doublefeed == 0 ? 0 : 1; cfg.params.dpi = G400_DPI::G400_D200;//gcap.resolution_dst <= 200.0f ? G400_DPI::G400_D200 : (gcap.resolution_dst <= 300.0f ? G400_DPI::G400_D300 : G400_DPI::G400_D600); cfg.params.enableLed = 1; if (gcap.filter != 3 || gcap.enhance_color ||gcap.fadeback!=0|| gcap.hsvFilter != 0) cfg.params.isColor = 1; else cfg.params.isColor = SupPixelTypes[gcap.pixtype]; //cfg.params.isColor = 1; cfg.params.isCorrect = 1;//1 机器校正 PaperStatus ps = { gcap.papertype,gcap.paperAlign }; cfg.params.pageSize = SupPaperTyps[ps]; CSize size; #ifdef G300 size = PaperSize.GetPaperSize(TwSS::A4, 200.0f, gcap.paperAlign);//G300 最大支持A4幅面 #else size = PaperSize.GetPaperSize(gcap.papertype, 200.0f, gcap.paperAlign); #endif// G300 cfg.params.dstHeight = (int)((size.cy + 200) / 100); cfg.params.reversed1 = cfg.params.reversed2 = cfg.params.reversed3 = 0; } G400AndroidScanConfig::~G400AndroidScanConfig() { } unsigned int G400AndroidScanConfig::GetData() { return cfg.value; }