📄 dib.h
字号:
// Dib.h: interface for the CDib class.
//
//////////////////////////////////////////////////////////////////////
#ifndef __DIB_H
#define __DIB_H
#include <windows.h>
class CDib
{
private:
BYTE *m_lpBits; // 图像数据指针
int m_nWidth; // 图像宽度,像素
int m_nHeight; // 图像高度,像素
int m_nBitCount; // 图像中每像素所占位数
BYTE *m_lpPatte; // 调色板指针
BOOL m_IsGrayed; // 是否经过灰度化处理
BOOL m_IsPixeled; // 是否经过二值化处理
BOOL LoadDib(BYTE *lpDib); // 将Dib位图填充到CDib类的数据结构中
BOOL SaveToDib(BYTE *lpDib); // 将CDib类的数据结构中的数据转换为Dib位图格式数据
public:
// 构造函数
CDib();
// 析构函数
~CDib();
// 清除CDib类中有关位图的数据
void Clear();
// 检测位图是否经过灰度化处理
BOOL IsGrayed()
{
return m_IsGrayed;
}
// 检测位图是否经过灰度化处理
BOOL IsPixeled()
{
return m_IsPixeled;
}
// 检测位图是否为空
BOOL IsEmpty()
{
if (m_lpBits == NULL)return TRUE;
else
return FALSE;
}
// 获取图像宽度
int GetWidth()
{
return m_nWidth;
}
// 获取图像高度
int GetHeight()
{
return m_nHeight;
}
// 获取图像中每像素所占位数
int GetBitCount()
{
return m_nBitCount;
}
// 在DC上根据位图数据画出位图
int Stretch(HDC, int, int, int, int, int, int, int, int, UINT, DWORD);
// 从位图文件中读取位图数据,根据文件指针
BOOL LoadFromFile(CFile *pf);
// 从位图文件中读取位图数据,根据文件名
BOOL LoadFromFile(LPCTSTR filename);
// 将位图数据保存到位图文件,根据文件指针
BOOL SaveToFile(CFile *pf);
// 将位图数据保存到位图文件,根据文件名
BOOL SaveToFile(LPCTSTR filename);
// 将图像数据复制到剪贴板
BOOL Copy();
// 从剪贴板上复制图像数据
BOOL Paste();
// 图像的灰度化,去除彩色信息
BOOL Gray();
// 图像的二值化,使得图像只有黑白两种颜色
BOOL Pixel();
// 图像的去噪处理,去除噪声点
// 只能处理二值化后的图像
BOOL RemoveScatterNoise();
// 针对倾斜图像的调整,如果图像存在倾斜则调整为大致一样的水平高度
// 只能处理二值化后的图像
BOOL SlopeAdjust();
// 将字符分割为单一的字符
// 只能处理二值化后的图像
BOOL CharSegement();
// 字符的归一化处理,使得每个字符有相同的高度和宽度
BOOL CharStandard();
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -