欢迎来到天天文库
浏览记录
ID:36782785
大小:332.85 KB
页数:3页
时间:2019-05-15
《基于VC.NET的图像处理》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、维普资讯http://www.cqvip.com第l5卷第1期洛阳工业高等专科学校学报VOLl5No.12005年3月JournalofLuoyangTechnologyCollegeMar.2005基于VC.NET的图像处理项润华,邱桔(中南林学院电子信息学院,湖南长沙410004)摘要:利用VC.NET#'~-个新类CImage类对图像文件进行读取、处理、显示,并通过实例实现所有的操作.关键词:VC.NET;Clma~e类:图像处理中图分类号:TP751文献标识码:A文章编号:1008-8814(2005)01.004
2、3-03l引言(1)Clmage::PIgBIt和Clmage::MaskBIt只髓在以往用VC++6.0进行图像编程时,由于MFC内置WindowsNT4.0或更高版本中使用。它们不能在运行CBitmap类和静态图片控件的功能比较弱,它只能显示出在Windows95/98或其更高版本的应用程序中使用。资源中的图标、位图、光标以及图元文件的内容。要想具(2)AlphaBlend和Clmage::TransparentBIt只能在有VB中Image控件功能,可以显示出当前流行的图像格式Windows2000或其更高版本中和W
3、indows98或其更高版文件,就必需调用第三方编写的代码(常常需要根据不同图本中使用,因为必须与msimg32.1ib链接才能使用这些方像文件的格式及其数据存储结构进行处理),这给编程人员法。(该库只适用于运行Windows2000或其更高版本和带来了极大的麻烦。Windows98或其更高版本的应用程序。)只有这些方法从不被调用,才可以在运行Windows95目前,Microsoft公司推出了一个全新的开发平台VisualStudio.NET。VisualC++.NET是其中的一个重要组成部或WindowsNT4.0的应
4、用程序中包括AlphaBlend和分,是目前最新和最先进的软件开发工具之一。其新增加TransparentBIt。如果应用程序包括这些方法,并且它必须的Clmage类,是MFC和ATL共享的新类。它提供了强大的在早期操作系统上运行,那么您必须使用链接器的图形处理能力,弥补了VC++在图像处理方面的缺陷。/delayload以延迟msimIg32.1ib的加载。只要应用程序在WindowsNT4.0或Windows95下运行时不调用这些方法2CImage类概述之一,它将不会试图加载msimg32mb。可以使用Clmage::
5、Clmage类是VC.NET新增的一个类,它能从外部磁盘lsTransparencySupported方法检查透明支持是否可用。中调入一个JPEG、GIF、BMP、TIFF、WMF(Windows元例:文件)、EMF(增强wMr)、PNG(可移植的网络图像)格式的if(Clmage::lsTransparencySupported0)图像文件加以显示,而且这些文件格式可以相互转换。SafetocallClmage::AlphaBlendandCImage::Clmage类中封装了许多非常有用的方法,其中也包含了处Trans
6、parentBIt理DIB(设备无关位图)的方法,这使编程人员能够很轻松地else处理每个位图像像素(至于详细的方法及其使用,可查找
7、
8、Transparencynotsupported.FallbacktosomethingMSDN)。它具有下列特性:else.(1)AlphaBlend支持像素级的颜色混合,从而实现透明若要编译调用这些方法的应用程序,请在#including任和半透明的效果。何系统头前面插入一个#define_wiN32_wiN~rr语句,指(2)PIgBIt能使一个矩形区域的位图映射到一个平行四示此Wi
9、ndows版本等于或大于5.0:边形区域中,而且还可能使用位屏蔽操作。#defineWIN3INNT0x0500—(3)TransparentBIt在目标区域中产生透明图像,如果应用程序不需要在早于Windows2000或SetTransparentColor用来设置某种颜色是透明色。Windows98的操作系统上运行,可以不使用/delayload,直(4)MaskBIt在目标区域中产生源位图与屏蔽位图合成接链接到msimg32.1ib。的效果。在Windows20o0和Windows98下,Clmage::Draw3早
10、期操作系统的Cimage类限制的表现与在WindowsNT4.0或Windows95下不同。如果编译应用程序时将—WIN32_WINNT的值设置为由于Clmage类是Microsoft推出的最新开发平台所增加小于0x0500,则Draw有效,但它在运行Windows2000和的一个新类,因此许多Clma
此文档下载收益归作者所有