你好,欢迎来到电脑编程技巧与维护杂志社! [免费注册][请登录 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:杂志经典 / 图形图象处理与游戏编程
FreeImage的图像处理软件(七)
 

在文档类中重载OnFileSaveAs,调用GetFilterString创建文件类型过滤字符串,调用SaveDIB按指定格式保存位图,代码如下。

void CDIPDoc::OnFileSaveAs()

{

char szFilter[2048];

int nFileFormats = 0;

nFileFormats = GetFilterString(szFilter);

CFileDialog dlg(FALSE,NULL,NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,szFilter);

if(dlg.DoModal() == IDOK)  {

CString strPathName, strExtList;

int nPos = 0, nFilterIndex;

nFilterIndex = dlg.m_ofn.nFilterIndex;

strPathName = dlg.GetPathName();

if(nFilterIndex > 1 && nFilterIndex <= FreeImage_GetFIFCount()){

strExtList = FreeImage_GetFIFExtensionList(

(FREE_IMAGE_FORMAT)(nFilterIndex-2));

nPos = strExtList.Find(',');

if(nPos == -1)

strPathName += "."+strExtList;

else

strPathName += "."+strExtList.Left(nPos);

}

SaveDIB(m_pFI, strPathName);

} 

}

七、结语

FreeImage是一款简单易用,能够读写多种图像类型,以及图像类型之间的相互转换和位深度转换,其位图信息和位图数据由FIBITMAP数据结构维护,可以在此基础上实现高级的图像处理与分析算法,提高了软件开发效率。

  推荐精品文章

·2019年9月目录 
·2019年8月目录
·2019年7月目录
·2019年6月目录
·2019年5月目录
·2019年4月目录    
·2019年3月目录   
·2019年2月目录   
·2019年1月目录  
·探析云计算下应用软件用户数据安全问题
·地理空间集束线可视化表达
·Android智能净水机APP开发(一)
·2018年12月目录  
·springAOP的思想和设计以及实现

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备06048724号,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区长春桥路5号6号楼1209室,邮编:100089