- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MFC实现图像显示和直方图统计
班序号:196062-16
学号:20061002696
学生:李妮
指导老师:童恒建
报告日期:2009年3月16日
第一部分 位图的显示
实验目的
熟悉MFC应用程序向导,深入理解位图的结构,程序化实现对位图的载入和显示功能。
位图结构如下
文件头 信息头 调色板 像素信息 实验步骤
利用MFC APPWizard[EXE]建立一个新的工程。单文档或多文档视图都可以。注意第四步时要选择MAPI[Messaging API],第六步选择Statically链接库。
首先位图是作为一个文件被读入的,所以载入位图时,要将其头部信息一并读入。所以设计如下变量来接收位图的信息。
// Attributes
public:
LPBITMAPFILEHEADER m_pBmpFileHeader;//文件信息头
LPBITMAPINFOHEADER m_pBmpInfoHeader;//位图信息头
LPBITMAPINFO m_pBmpInfo;//位图信息
BYTE* pdib;//图象数据
LPBITMAPFILEHEADER m_pOldBmpFileHeader;//文件信息头
LPBITMAPINFOHEADER m_pOldBmpInfoHeader;//位图信息头
LPBITMAPINFO m_pOldBmpInfo;//位图信息
BYTE* pOlddib;//图象数据
UINT nPaletteSize;//调色板大小
然后还要在Doc.h中添加 afx_msg void OnFileOpen();和afx_msg void OnFileSave();这两个基本的消息映射函数。
接下来就是载入文件的实现部分了,此处的代码都是添加在View.cpp文件中的。
//Doc的构造函数
CPic2Doc::CPic2Doc()
{
// TODO: add one-time construction code here
m_pBmpFileHeader = NULL;
m_pBmpInfo = NULL;
m_pBmpInfoHeader = NULL;
pdib = NULL;
m_pOldBmpFileHeader = NULL;
m_pOldBmpInfo = NULL;
m_pOldBmpInfoHeader = NULL;
pOlddib = NULL;
}
//Doc析构函数
CPic2Doc::~CPic2Doc()
{
//释放内存
if(m_pBmpFileHeader!=NULL)
{
m_pBmpFileHeader = (BITMAPFILEHEADER *) new char[5];
delete []m_pBmpFileHeader;
}
if(m_pBmpInfo!=NULL)
{
m_pBmpInfo = (BITMAPINFO*) new char[5];
delete []m_pBmpInfo;
}
if(m_pBmpInfoHeader!=NULL)
{
m_pBmpInfoHeader = (BITMAPINFOHEADER *)new char[5];
delete []m_pBmpInfoHeader;
}
if(pdib!=NULL)
{
pdib =(BYTE*)new char[5];
delete []pdib;
}
if(m_pOldBmpFileHeader!=NULL)
{
m_pOldBmpFileHeader = (BITMAPFILEHEADER *) new char[5];
delete []m_pOldBmpFileHeader;
}
if(m_pOldBmpInfo!=NULL)
{
m_pOldBmpInfo = (BITMAPINFO*) new char[5];
delete []m_pOldBmpInfo;
}
if(m_pOldBmpInfoHeader!=NULL)
{
m_pOldBmpInfoHeader = (BITMAPINFOHEADER *)new char[5];
delete []m_pOldBmpInfoHeader;
}
if(pOlddib!=NULL)
{
pOlddib =(BYTE*)new char[5];
delete []pOlddib;
}
}
//Fileopen和Filesave的函数体
void CPic2Doc:
您可能关注的文档
最近下载
- 2025至2030中国再担保行业发展趋势分析与未来投资战略咨询研究报告.docx
- 新版VDA6.3-2023过程审核精品教程(培训课件).pptx VIP
- 鲁教版Unit5IlikemusicthatIcandanceto知识点教案.pdf VIP
- 2024年四川省公考《申论》题县乡卷附解析.pdf VIP
- DB4401T+282—2024准《城市道路挖掘修复技术规范》.docx VIP
- 600MW火电机组节能对标指导手册_PDF电子书下载 高清 带索引书签目录_sample_中国电力投资集团公司编著_北京:中国电力出版社.pdf VIP
- 高手接话:高情商的讲话方法.pdf VIP
- 蓝色商务供应商采购供应商管理培训PPT模板.pptx VIP
- 八年级英语IlikemusicthatIcandanceto测试题.docx VIP
- 建设银行2025开封市信息科技岗笔试题及答案.docx VIP
文档评论(0)