mirror of http://192.168.1.51:8099/lmh188/twain3
69 lines
1.6 KiB
C
69 lines
1.6 KiB
C
|
/*
|
|||
|
* ====================================================
|
|||
|
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD><EFBFBD><EFBFBD>תͼ<EFBFBD><EFBFBD>
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ά
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䣺2020/4/21
|
|||
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䣺v1.0 2020/4/21
|
|||
|
v1.1 2020/8/12 <EFBFBD><EFBFBD><EFBFBD>ĸ巽<EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>BUG
|
|||
|
* <EFBFBD>汾<EFBFBD>ţ<EFBFBD>v1.1
|
|||
|
|
|||
|
* ====================================================
|
|||
|
*/
|
|||
|
|
|||
|
#ifndef IMAGE_APPLY_ROTATION_H
|
|||
|
#define IMAGE_APPLY_ROTATION_H
|
|||
|
|
|||
|
#include "ImageApply.h"
|
|||
|
|
|||
|
class CImageApplyRotation : public CImageApply
|
|||
|
{
|
|||
|
public:
|
|||
|
enum class RotationType
|
|||
|
{
|
|||
|
Invalid, //<2F><>Ч
|
|||
|
Rotate_90_clockwise, //˳ʱ<CBB3><CAB1>90<39><30>
|
|||
|
Rotate_180, //180<38><30>
|
|||
|
Rotate_90_anti_clockwise, //<2F><>ʱ<EFBFBD><CAB1>90<39>㣬<EFBFBD><E3A3AC>270<37><30>
|
|||
|
|
|||
|
AutoTextOrientation //<2F>Զ<EFBFBD><D4B6>ĸ巽<C4B8><E5B7BD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>ת
|
|||
|
};
|
|||
|
|
|||
|
public:
|
|||
|
|
|||
|
/*
|
|||
|
* rotation [in]:<EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* isBackTransposed [in]:trueΪ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>180<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD>Ȼ
|
|||
|
* dpi [in]:<EFBFBD><EFBFBD>ǰͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>DPI<EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>rotationΪAutoTextOrientationʱ<EFBFBD><EFBFBD>Ч<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD>ĸ巽<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD>Ͻ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD>任Ϊ200DPI<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD>
|
|||
|
* tessadataPath [in]:ѵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>·<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>rotationΪAutoTextOrientationʱ<EFBFBD><EFBFBD>Ч
|
|||
|
*/
|
|||
|
CImageApplyRotation(RotationType rotation, bool isBackTransposed = false, int dpi = 200, const char* tessdataPath = nullptr);
|
|||
|
|
|||
|
virtual ~CImageApplyRotation();
|
|||
|
|
|||
|
virtual void apply(cv::Mat & pDib, int side) override;
|
|||
|
|
|||
|
virtual void apply(std::vector<cv::Mat>& mats, bool isTwoSide);
|
|||
|
|
|||
|
bool isBackTransposed() { return m_backTranspose; }
|
|||
|
|
|||
|
int getDPI() { return m_dpi; }
|
|||
|
|
|||
|
RotationType getRotationType() { return m_rotation; }
|
|||
|
|
|||
|
void setBackTransposed(bool enabled) { m_backTranspose = enabled; }
|
|||
|
|
|||
|
void setDPI(int dpi) { m_dpi = dpi; }
|
|||
|
|
|||
|
void setRotationType(RotationType type) { m_rotation = type; }
|
|||
|
|
|||
|
private:
|
|||
|
RotationType m_rotation;
|
|||
|
bool m_backTranspose;
|
|||
|
int m_dpi;
|
|||
|
|
|||
|
void* osd;
|
|||
|
};
|
|||
|
|
|||
|
#endif // !IMAGE_APPLY_ROTATION_H
|