首页 理论教育 C#编程新手自学手册:颜色混合处理

C#编程新手自学手册:颜色混合处理

时间:2023-10-22 理论教育 版权反馈
【摘要】:如果在创建Brush对象时设置的颜色属性不是255,则此Brush对象绘制的实心形状颜色会和背景颜色混合。SourceCopy:设置显示颜色时不和背景色混合。实例90:实现颜色混合处理下面通过一个具体实例来说明颜色混合处理的过程。本实例保存在“光盘:\daima\19”文件夹内,项目名为WindowsApplication1。功能是创建一个窗体项目并在窗体内显示三原色图形。图19-5 新建项目2)调整窗体Form1的大小,然后编写绘图处理代码,主要代码如下:上述代码的具体实现流程如下。

C#编程新手自学手册:颜色混合处理

如果在创建Brush对象时设置的颜色属性不是255,则此Brush对象绘制的实心形状颜色会和背景颜色混合。通过Graphics类的CompositingMode属性可以控制上述混合,CompositingMode属性值是由System.Drawing.Drawing2D.CompositingMode枚举来定义的,该枚举的具体说明如下。

978-7-111-36370-5-Part03-814.jpgSourceCopy:设置显示颜色时不和背景色混合。

978-7-111-36370-5-Part03-815.jpgSourceOver:设置显示颜色时和背景色混合。

当进行图像混合处理时,Graphics对象的CompositingQuality属性可以获取或设置绘制到此Graphics对象的合成图像的呈现质量。通过使用CompositingQuality枚举值可以设置符合时的质量等级,各枚举值的具体说明如下。

978-7-111-36370-5-Part03-816.jpgAssumeLinear:假定线形值。

978-7-111-36370-5-Part03-817.jpgDefault:默认质量。

978-7-111-36370-5-Part03-818.jpgGammaCorrected:用灰度校正。

978-7-111-36370-5-Part03-819.jpgHighQuality:高质量、低速度符合。

978-7-111-36370-5-Part03-820.jpgHighSpeed:高速度、低质量符合。

978-7-111-36370-5-Part03-821.jpgInvalid:无效质量。

实例90:实现颜色混合处理

下面通过一个具体实例来说明颜色混合处理的过程。本实例保存在“光盘:\daima\19”文件夹内,项目名为WindowsApplication1。功能是创建一个窗体项目并在窗体内显示三原色图形。具体实现步骤如下。

1)在Visual Studio 2010中创建一个Windows应用程序,如图19-5所示。

978-7-111-36370-5-Part03-822.jpg

图19-5 新建项目

2)调整窗体Form1的大小,然后编写绘图处理代码,主要代码如下:(www.xing528.com)

978-7-111-36370-5-Part03-823.jpg

978-7-111-36370-5-Part03-824.jpg

上述代码的具体实现流程如下。

978-7-111-36370-5-Part03-825.jpg定义窗体构函数Form1,设置窗体的显示属性。

978-7-111-36370-5-Part03-826.jpg定义函数OnPaint,绘制三原色图形。

978-7-111-36370-5-Part03-827.jpg通过SolidBrush分别创建五个不同颜色的画刷,各画刷的具体说明如下。

●dd:黑色实心不透明画刷。

●redBrush:红色实心半透明画刷。

●greenBrush:绿色实心半透明画刷。

●blueBrush:蓝色实心半透明画刷。

978-7-111-36370-5-Part03-828.jpg通过FillRectangle()方法分别绘制红色、绿色和蓝色的圆。

978-7-111-36370-5-Part03-829.jpg使用Dispose()释放画刷。

执行后将在窗体内显示一个三原色图形,如图19-6所示。

978-7-111-36370-5-Part03-830.jpg

图19-6 三原色图形

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈