欢迎来到天天文库
浏览记录
ID:40710920
大小:361.20 KB
页数:4页
时间:2019-08-06
《WPF中使图片背景透明的方法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯实用第一智慧密集。赫i0i.摘要:在WPF中JPG、BMP不支持透明色的图片,分别用支持透明色图片和编程制作蒙版两种方法,使不支持透明色的图片背景透明。关键词:WPF;调色板;XAML;Alpha1概述3创建项目WPF是微软新一代图形系统,运行在.NETFramework3.0首先,新建一个WPF项目,选择WPF应用程序,项目名架构下,为用户界面、2D/3D图形、文档和媒体提供了统一的称:tranpic,如图1所示。描述和操作方法。基于DirectX9/10技术的WPF不仅带来了前所未有的3D界面,而且其图形向量渲染引
2、擎也大大改进了传统的2D界面,比如Vista中的半透明效果的窗体等都得益于WPF,相对于Windows客户端的开发来说,向前跨出了巨大的一步,它提供了超丰富的.NETUI框架,集成了矢量图形,丰富的流动文字支持flowtextsupport.3D视觉效果和强大无比的控件模型框架。微软在引入WindowsPresentationFoundation的同时,还引入了XAML,这是一种公开表示Windows应用程序用户界面的标记语言,可使开发人员和设计人员用来构建和重用UI的图1工具更加丰富。对于Web开发人员,XAML提供了熟悉的UI说明模式。XAML还使UI设计
3、从基础代码中分离出来,从而设定界面中创建4个按钮和1个image控件,第一个按钮使开发人员和设计人员之间的合作更加紧密。起名“button1”打开文件,第二个按钮起名“button2”使用蒙版显示图片按钮,第三个是“button3”直接使用编程显示透明2程序应用图片,第四个按钮“button4”恢复图片原状。使用Image控件在WPF应用程序.没有提供类似SetColorKey之类的函起名image1使图片显示出来。为了使图片背景突出,把窗口数,在使用VisualStudio2008WPF时发现,Image类不能使背景色选为蓝色,如图2所示。BMP、JPG等图
4、片背景透明,只能使用PNG、GIF等背景透明。为此,要想使BMP、JPG图片背景透明,必须使用一些特殊的办法来进行背景透明。在使用Image类进行图片处理时,发现Image提供了OpaeityMask属性,利用该属性可以设定一个具有Alpha属性的图片作为蒙版使用,使不透明的部分显示出来,已达到背景透明的效果。在使用当中。要想背景透明,必须事先创建一张作为蒙版支持Alpha的图片来显示背景透明的图片,这里准备了两张图片,一张是背景色为白色test.JPg图片.另一张是支持透明背景的test.Png图片。下面说明如何图2利用创建蒙版来显示图片及使用程序代码创建一
5、张蒙版显Xaml编写界面代码:示图片《WindoWx:Class=!t~anpic;windowt与雏⋯⋯B胁PHICSANDl啊AGEPROCESSING⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯一xmlns=“http://schemas.microsoft.com/winfx/2OO6/xaml/image1.Source=bitmap;//图片在image控件中显示出来presentation”}xmlns:x=”http://schemas.microsoft.com/winfx/2OO6/xaml'‘4.2打开蒙版文件Title=’。W
6、indowl“Height=423“Width=“396WindowSta卜双击使用蒙版按钮,添加button2一Click(objectsender,tupLocation=。‘CenterScreen“Background=“Blue。‘>RoutedEventArgse)事件,把蒙版图片载入,创建inlagebrush画刷,利用image属性opacitymask载入网片画刷,在image1控件中,显示图片背景透明。7、ht=37‘,>privatevoidbutton2一Click(objectsender,RoutedEventArgse){Microsoft.Win32OpenF_leDiaIOgopenfite=newMicrosoft,Win32.OpenFileDialog0;∥丰丁开文件对话框</Grid.RowDefinitions>openfile.Filter=”PNG文件Png“:8、umnDefinitions>//设置
7、ht=37‘,>privatevoidbutton2一Click(objectsender,RoutedEventArgse){Microsoft.Win32OpenF_leDiaIOgopenfite=newMicrosoft,Win32.OpenFileDialog0;∥丰丁开文件对话框</Grid.RowDefinitions>openfile.Filter=”PNG文件Png“:8、umnDefinitions>//设置
8、umnDefinitions>//设置
此文档下载收益归作者所有