1.针对G100 G200系列机器长文稿自动裁切功能纸张定义,以及关联协议之间的互斥性调整;

2.开放TWAINUI背面旋转180°功能
This commit is contained in:
lovelyyoung 2020-11-12 19:42:16 +08:00
parent 1f3e117915
commit 287843624e
10 changed files with 56 additions and 31 deletions

View File

@ -46,7 +46,7 @@ static std::vector<CString> surportStyles = {
_T("A4"), _T("A4"),
_T("A5"), _T("A5"),
_T("A6"), _T("A6"),
_T("B4"), //_T("B4"),
_T("B5"), _T("B5"),
_T("B6"), _T("B6"),
_T("Letter"), _T("Letter"),

View File

@ -15,7 +15,6 @@ std::vector<int> g400hiden =
IDC_LBSDL, IDC_LBSDL,
IDC_SLDDETECTLEVEL, IDC_SLDDETECTLEVEL,
IDC_LBSDR, IDC_LBSDR,
IDC_CKBACKROTATION
}; };
// CFeedPaperPage 对话框 // CFeedPaperPage 对话框

View File

@ -51,12 +51,12 @@ static std::map<int, PaperStatus> paperStatusMap = {
{0,{TwSS::A4,PaperAlign::Rot0}}, {0,{TwSS::A4,PaperAlign::Rot0}},
{1,{TwSS::A5,PaperAlign::Rot0}}, {1,{TwSS::A5,PaperAlign::Rot0}},
{2,{TwSS::A6,PaperAlign::Rot0}}, {2,{TwSS::A6,PaperAlign::Rot0}},
{3,{TwSS::B4,PaperAlign::Rot0}}, //{3,{TwSS::B4,PaperAlign::Rot0}},
{4,{TwSS::B5,PaperAlign::Rot0}}, {3,{TwSS::B5,PaperAlign::Rot0}},
{5,{TwSS::B6,PaperAlign::Rot0}}, {4,{TwSS::B6,PaperAlign::Rot0}},
{6,{TwSS::USLetter,PaperAlign::Rot0}}, {5,{TwSS::USLetter,PaperAlign::Rot0}},
{7,{TwSS::USLegal,PaperAlign::Rot0}}, {6,{TwSS::USLegal,PaperAlign::Rot0}},
{8,{TwSS::None,PaperAlign::Rot0}}, {7,{TwSS::None,PaperAlign::Rot0}},
}; };
#endif #endif

View File

@ -23,7 +23,8 @@ CImageApplyAdjustColors::~CImageApplyAdjustColors(void)
void CImageApplyAdjustColors::apply(cv::Mat& pDib,int side) void CImageApplyAdjustColors::apply(cv::Mat& pDib,int side)
{ {
#ifdef LOG #ifdef LOG
FileTools::write_log("imgprc.txt", "enter CImageApplyAdjustColors apply"); FileTools::
"imgprc.txt", "enter CImageApplyAdjustColors apply");
#endif // LOG #endif // LOG
if (pDib.empty()) if (pDib.empty())
{ {

View File

@ -86,7 +86,8 @@ void CImageApplyBWBinaray::apply(cv::Mat& pDib, int side)
} }
#ifdef LOG #ifdef LOG
FileTools::write_log("imgprc.txt", "exit CImageApplyBWBinaray apply"); FileTools::
"imgprc.txt", "exit CImageApplyBWBinaray apply");
#endif // LOG #endif // LOG
} }

View File

@ -21,7 +21,8 @@ CImageApplyChannel::~CImageApplyChannel(void)
void CImageApplyChannel::apply(cv::Mat& pDib,int side) void CImageApplyChannel::apply(cv::Mat& pDib,int side)
{ {
#ifdef LOG #ifdef LOG
FileTools::write_log("imgprc.txt", "enter CImageApplyChannel apply"); FileTools::
"imgprc.txt", "enter CImageApplyChannel apply");
#endif // LOG #endif // LOG
if (pDib.empty()) if (pDib.empty())

View File

@ -119,7 +119,8 @@ cv::Mat CImageApplyDiscardBlank::getRoiMat(const cv::Mat& image)
void CImageApplyDiscardBlank::apply(cv::Mat& pDib, int side) void CImageApplyDiscardBlank::apply(cv::Mat& pDib, int side)
{ {
#ifdef LOG #ifdef LOG
FileTools::write_log("imgprc.txt", "enter CImageApplyDiscardBlank apply"); FileTools::
"imgprc.txt", "enter CImageApplyDiscardBlank apply");
#endif // LOG #endif // LOG
if (pDib.empty()) if (pDib.empty())

View File

@ -811,9 +811,10 @@ Result HuagaoDs::identityOpenDs(const Identity&) {
data = Capability::createEnumeration(data.type(), { PaperSize::A3,PaperSize::A4,PaperSize::A5, data = Capability::createEnumeration(data.type(), { PaperSize::A3,PaperSize::A4,PaperSize::A5,
PaperSize::A6,PaperSize::IsoB4,PaperSize::IsoB5, PaperSize::A6,PaperSize::IsoB4,PaperSize::IsoB5,
PaperSize::IsoB6,PaperSize::UsLetter,PaperSize::UsLegal, PaperSize::IsoB6,PaperSize::UsLetter,PaperSize::UsLegal,
PaperSize::UsLedger,PaperSize::MaxSize,PaperSize::None }, PaperSize::UsLedger,PaperSize::MaxSize,PaperSize::None,PaperSize::UsStatement},
index == -1 ? 0 : index, index == -1 ? 0 : index,
0); 0);
return success(); return success();
} }
case Msg::GetCurrent: case Msg::GetCurrent:
@ -837,11 +838,21 @@ Result HuagaoDs::identityOpenDs(const Identity&) {
} }
if (contains) { if (contains) {
m_scanparam->papertype = (byte)paper; m_scanparam->papertype = (byte)paper;
if (paper == (byte)PaperSize::None) if (paper == (byte)PaperSize::None|| paper == (byte)PaperSize::UsStatement)
m_scanparam->paperAlign = PaperAlign::Rot0; m_scanparam->paperAlign = PaperAlign::Rot0;
m_autosize = paper == (byte)PaperSize::None? (UInt16)AutoSize::Auto:(UInt16)AutoSize::None;
if(paper== (byte)PaperSize::UsStatement)
{
m_autosize = (UInt16)AutoSize::None;
m_autoboarderdetcet = false;
m_scanparam->is_autocrop = 0;
}
else
{
m_autosize = (paper == (byte)PaperSize::None) ? (UInt16)AutoSize::Auto : (UInt16)AutoSize::None;
m_autoboarderdetcet = paper == (byte)PaperSize::None; m_autoboarderdetcet = paper == (byte)PaperSize::None;
m_scanparam->is_autocrop = paper == (byte)PaperSize::None ? 1 : 0; m_scanparam->is_autocrop = paper == (byte)PaperSize::None ? 1 : 0;
}
return success(); return success();
} }
return badValue(); return badValue();
@ -1193,8 +1204,9 @@ Result HuagaoDs::identityOpenDs(const Identity&) {
m_caps[CapType::IAutomaticDeskew] = [this](Msg msg, Capability& data)->Result { m_caps[CapType::IAutomaticDeskew] = [this](Msg msg, Capability& data)->Result {
switch (msg) { switch (msg) {
case Msg::Get: case Msg::Get:
data = Capability::createEnumeration<CapType::IAutomaticDeskew>( //data = Capability::createEnumeration<CapType::IAutomaticDeskew>(
{ Bool(), Bool(true) }, Bool(m_scanparam->autodescrew == 0 ? false : true)); // { Bool(), Bool(true) }, Bool(m_scanparam->autodescrew == 0 ? false : true));
data = Capability::createOneValue<CapType::IAutomaticDeskew>(m_scanparam->autodescrew);
return success(); return success();
case Msg::Reset: case Msg::Reset:
m_scanparam->autodescrew = true; m_scanparam->autodescrew = true;
@ -1343,12 +1355,20 @@ Result HuagaoDs::identityOpenDs(const Identity&) {
case Msg::Set: { case Msg::Set: {
auto autosize = data.currentItem<CapType::IAutoSize>(); auto autosize = data.currentItem<CapType::IAutoSize>();
if (autosize == AutoSize::Auto) if (autosize == AutoSize::Auto)
{
if(m_scanparam->papertype==(byte)PaperSize::UsStatement)
{
m_scanparam->is_autocrop = 0;
m_autoboarderdetcet = false;
}
else
{ {
m_scanparam->is_autocrop = 1; m_scanparam->is_autocrop = 1;
m_scanparam->papertype = (byte)Twpp::PaperSize::None; m_scanparam->papertype = (byte)Twpp::PaperSize::None;
m_scanparam->paperAlign = PaperAlign::Rot0; m_scanparam->paperAlign = PaperAlign::Rot0;
m_autoboarderdetcet = true; m_autoboarderdetcet = true;
} }
}
else else
{ {
m_autoboarderdetcet = false; m_autoboarderdetcet = false;
@ -1381,12 +1401,15 @@ Result HuagaoDs::identityOpenDs(const Identity&) {
case Msg::Set: { case Msg::Set: {
auto autodetectborder = data.currentItem<CapType::IAutomaticBorderDetection>(); auto autodetectborder = data.currentItem<CapType::IAutomaticBorderDetection>();
if (autodetectborder) if (autodetectborder)
{
if(m_scanparam->papertype!=(byte)PaperSize::UsStatement)
{ {
m_scanparam->is_autocrop = true; m_scanparam->is_autocrop = true;
m_scanparam->papertype = (byte)Twpp::PaperSize::None; m_scanparam->papertype = (byte)Twpp::PaperSize::None;
m_scanparam->paperAlign = PaperAlign::Rot0; m_scanparam->paperAlign = PaperAlign::Rot0;
m_autosize = (UInt16)AutoSize::Auto; m_autosize = (UInt16)AutoSize::Auto;
} }
}
else else
{ {
m_autosize = (UInt16)AutoSize::None; m_autosize = (UInt16)AutoSize::None;
@ -2449,7 +2472,6 @@ void HuagaoDs::onDeviceEvent(int eventID)
{ {
//if (mapDeviceEvent.count(eventID)) //if (mapDeviceEvent.count(eventID))
//{ //{
// //devEvent.push(DeviceEvent::)
// DeviceEvent::Type dev_type = mapDeviceEvent[eventID]; // DeviceEvent::Type dev_type = mapDeviceEvent[eventID];
// auto evt = DeviceEvent::simple((DeviceEvent::Type)dev_type, "HuaGo Device Event"); // auto evt = DeviceEvent::simple((DeviceEvent::Type)dev_type, "HuaGo Device Event");
// devEvent.push(evt); // devEvent.push(evt);
@ -2497,7 +2519,7 @@ void HuagaoDs::updataGscanCap()
Twpp::Result HuagaoDs::startScan() Twpp::Result HuagaoDs::startScan()
{ {
xtfer = 0; xtfer = 0;
FileTools::write_log("D:\\1.txt", "RESET TWAIN TRANSFERED IMAGE COUNT"); //FileTools::write_log("D:\\1.txt", "RESET TWAIN TRANSFERED IMAGE COUNT");
if (!scanner->IsConnected()) if (!scanner->IsConnected())
{ {
scanner->open(0x064B, 0x7823); scanner->open(0x064B, 0x7823);

Binary file not shown.