mirror of http://192.168.1.51:8099/lmh188/twain3.0
1.针对G100 G200系列机器长文稿自动裁切功能纸张定义,以及关联协议之间的互斥性调整;
2.开放TWAINUI背面旋转180°功能
This commit is contained in:
parent
1f3e117915
commit
287843624e
|
@ -46,7 +46,7 @@ static std::vector<CString> surportStyles = {
|
|||
_T("A4"),
|
||||
_T("A5"),
|
||||
_T("A6"),
|
||||
_T("B4"),
|
||||
//_T("B4"),
|
||||
_T("B5"),
|
||||
_T("B6"),
|
||||
_T("Letter"),
|
||||
|
|
|
@ -15,7 +15,6 @@ std::vector<int> g400hiden =
|
|||
IDC_LBSDL,
|
||||
IDC_SLDDETECTLEVEL,
|
||||
IDC_LBSDR,
|
||||
IDC_CKBACKROTATION
|
||||
};
|
||||
|
||||
// CFeedPaperPage 对话框
|
||||
|
|
|
@ -51,12 +51,12 @@ static std::map<int, PaperStatus> paperStatusMap = {
|
|||
{0,{TwSS::A4,PaperAlign::Rot0}},
|
||||
{1,{TwSS::A5,PaperAlign::Rot0}},
|
||||
{2,{TwSS::A6,PaperAlign::Rot0}},
|
||||
{3,{TwSS::B4,PaperAlign::Rot0}},
|
||||
{4,{TwSS::B5,PaperAlign::Rot0}},
|
||||
{5,{TwSS::B6,PaperAlign::Rot0}},
|
||||
{6,{TwSS::USLetter,PaperAlign::Rot0}},
|
||||
{7,{TwSS::USLegal,PaperAlign::Rot0}},
|
||||
{8,{TwSS::None,PaperAlign::Rot0}},
|
||||
//{3,{TwSS::B4,PaperAlign::Rot0}},
|
||||
{3,{TwSS::B5,PaperAlign::Rot0}},
|
||||
{4,{TwSS::B6,PaperAlign::Rot0}},
|
||||
{5,{TwSS::USLetter,PaperAlign::Rot0}},
|
||||
{6,{TwSS::USLegal,PaperAlign::Rot0}},
|
||||
{7,{TwSS::None,PaperAlign::Rot0}},
|
||||
};
|
||||
#endif
|
||||
|
||||
|
|
|
@ -23,7 +23,8 @@ CImageApplyAdjustColors::~CImageApplyAdjustColors(void)
|
|||
void CImageApplyAdjustColors::apply(cv::Mat& pDib,int side)
|
||||
{
|
||||
#ifdef LOG
|
||||
FileTools::write_log("imgprc.txt", "enter CImageApplyAdjustColors apply");
|
||||
FileTools::
|
||||
"imgprc.txt", "enter CImageApplyAdjustColors apply");
|
||||
#endif // LOG
|
||||
if (pDib.empty())
|
||||
{
|
||||
|
|
|
@ -86,7 +86,8 @@ void CImageApplyBWBinaray::apply(cv::Mat& pDib, int side)
|
|||
}
|
||||
|
||||
#ifdef LOG
|
||||
FileTools::write_log("imgprc.txt", "exit CImageApplyBWBinaray apply");
|
||||
FileTools::
|
||||
"imgprc.txt", "exit CImageApplyBWBinaray apply");
|
||||
#endif // LOG
|
||||
}
|
||||
|
||||
|
|
|
@ -21,7 +21,8 @@ CImageApplyChannel::~CImageApplyChannel(void)
|
|||
void CImageApplyChannel::apply(cv::Mat& pDib,int side)
|
||||
{
|
||||
#ifdef LOG
|
||||
FileTools::write_log("imgprc.txt", "enter CImageApplyChannel apply");
|
||||
FileTools::
|
||||
"imgprc.txt", "enter CImageApplyChannel apply");
|
||||
#endif // LOG
|
||||
|
||||
if (pDib.empty())
|
||||
|
|
|
@ -119,7 +119,8 @@ cv::Mat CImageApplyDiscardBlank::getRoiMat(const cv::Mat& image)
|
|||
void CImageApplyDiscardBlank::apply(cv::Mat& pDib, int side)
|
||||
{
|
||||
#ifdef LOG
|
||||
FileTools::write_log("imgprc.txt", "enter CImageApplyDiscardBlank apply");
|
||||
FileTools::
|
||||
"imgprc.txt", "enter CImageApplyDiscardBlank apply");
|
||||
#endif // LOG
|
||||
|
||||
if (pDib.empty())
|
||||
|
|
|
@ -811,9 +811,10 @@ Result HuagaoDs::identityOpenDs(const Identity&) {
|
|||
data = Capability::createEnumeration(data.type(), { PaperSize::A3,PaperSize::A4,PaperSize::A5,
|
||||
PaperSize::A6,PaperSize::IsoB4,PaperSize::IsoB5,
|
||||
PaperSize::IsoB6,PaperSize::UsLetter,PaperSize::UsLegal,
|
||||
PaperSize::UsLedger,PaperSize::MaxSize,PaperSize::None },
|
||||
PaperSize::UsLedger,PaperSize::MaxSize,PaperSize::None,PaperSize::UsStatement},
|
||||
index == -1 ? 0 : index,
|
||||
0);
|
||||
|
||||
return success();
|
||||
}
|
||||
case Msg::GetCurrent:
|
||||
|
@ -837,11 +838,21 @@ Result HuagaoDs::identityOpenDs(const Identity&) {
|
|||
}
|
||||
if (contains) {
|
||||
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_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_scanparam->is_autocrop = paper == (byte)PaperSize::None ? 1 : 0;
|
||||
}
|
||||
return success();
|
||||
}
|
||||
return badValue();
|
||||
|
@ -1193,8 +1204,9 @@ Result HuagaoDs::identityOpenDs(const Identity&) {
|
|||
m_caps[CapType::IAutomaticDeskew] = [this](Msg msg, Capability& data)->Result {
|
||||
switch (msg) {
|
||||
case Msg::Get:
|
||||
data = Capability::createEnumeration<CapType::IAutomaticDeskew>(
|
||||
{ Bool(), Bool(true) }, Bool(m_scanparam->autodescrew == 0 ? false : true));
|
||||
//data = Capability::createEnumeration<CapType::IAutomaticDeskew>(
|
||||
// { Bool(), Bool(true) }, Bool(m_scanparam->autodescrew == 0 ? false : true));
|
||||
data = Capability::createOneValue<CapType::IAutomaticDeskew>(m_scanparam->autodescrew);
|
||||
return success();
|
||||
case Msg::Reset:
|
||||
m_scanparam->autodescrew = true;
|
||||
|
@ -1343,12 +1355,20 @@ Result HuagaoDs::identityOpenDs(const Identity&) {
|
|||
case Msg::Set: {
|
||||
auto autosize = data.currentItem<CapType::IAutoSize>();
|
||||
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->papertype = (byte)Twpp::PaperSize::None;
|
||||
m_scanparam->paperAlign = PaperAlign::Rot0;
|
||||
m_autoboarderdetcet = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
m_autoboarderdetcet = false;
|
||||
|
@ -1381,12 +1401,15 @@ Result HuagaoDs::identityOpenDs(const Identity&) {
|
|||
case Msg::Set: {
|
||||
auto autodetectborder = data.currentItem<CapType::IAutomaticBorderDetection>();
|
||||
if (autodetectborder)
|
||||
{
|
||||
if(m_scanparam->papertype!=(byte)PaperSize::UsStatement)
|
||||
{
|
||||
m_scanparam->is_autocrop = true;
|
||||
m_scanparam->papertype = (byte)Twpp::PaperSize::None;
|
||||
m_scanparam->paperAlign = PaperAlign::Rot0;
|
||||
m_autosize = (UInt16)AutoSize::Auto;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
m_autosize = (UInt16)AutoSize::None;
|
||||
|
@ -2449,7 +2472,6 @@ void HuagaoDs::onDeviceEvent(int eventID)
|
|||
{
|
||||
//if (mapDeviceEvent.count(eventID))
|
||||
//{
|
||||
// //devEvent.push(DeviceEvent::)
|
||||
// DeviceEvent::Type dev_type = mapDeviceEvent[eventID];
|
||||
// auto evt = DeviceEvent::simple((DeviceEvent::Type)dev_type, "HuaGo Device Event");
|
||||
// devEvent.push(evt);
|
||||
|
@ -2497,7 +2519,7 @@ void HuagaoDs::updataGscanCap()
|
|||
Twpp::Result HuagaoDs::startScan()
|
||||
{
|
||||
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())
|
||||
{
|
||||
scanner->open(0x064B, 0x7823);
|
||||
|
|
BIN
huagao/stdafx.h
BIN
huagao/stdafx.h
Binary file not shown.
Loading…
Reference in New Issue