twain2/ImageApplyResize.cpp

55 lines
1.1 KiB
C++

#include "StdAfx.h"
#include "ImageApplyResize.h"
#include "PublicFunc.h"
CImageApplyResize::CImageApplyResize(float orgResulution,float setResulution,bool autocut,SIZE dstsize)
:m_orgDpi(orgResulution),m_dpi(setResulution),autoCut(autocut),dstSize(dstsize)
{
}
CImageApplyResize::~CImageApplyResize(void)
{
}
void CImageApplyResize::apply(cv::Mat& pDib,int side)
{
//FileTools::write_log("D:\\1.txt", "Enter CImageApplyResize apply");
if(autoCut)
{
if (m_dpi != m_orgDpi)
{
//FileTools::write_log("D:\\1.txt", "Exit CImageApplyResize autoCut m_dpi != m_orgDpi apply");
float ratio = m_dpi / m_orgDpi;
cv::resize(pDib, pDib, cv::Size(0, 0), ratio, ratio);
//XdPrint("1");
}
}
else
{
cv::Size dst(dstSize.cx,dstSize.cy);
cv::resize(pDib,pDib,dst,0,0);
}
//FileTools::write_log("D:\\1.txt", "Exit CImageApplyResize apply");
}
float CImageApplyResize::getDpi()
{
return m_dpi;
}
void CImageApplyResize::setDpi(float dpi)
{
m_dpi = dpi;
}
float CImageApplyResize::getOrgDpi()
{
return m_orgDpi;
}
void CImageApplyResize::setOrgDpi(float dpi)
{
m_orgDpi = dpi;
}