问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何:使用复合模式控制 Alpha 混合

发布网友 发布时间:2023-07-25 23:06

我来回答

1个回答

热心网友 时间:2024-12-04 14:56

该代码使用 Graphics 对象和两个半透明画笔 (alpha = 160) 在该位图上绘画。 该代码使用半透明画笔填充红色椭圆和绿色椭圆。 绿色椭圆与红色椭圆重叠,但是绿色并不与红色混合,这是因为 Graphics 对象的复合模式已设置为 SourceCopy。 该代码在屏幕上绘制该位图两次:一次是在白色背景上,一次是在多色背景上。 位图中属于两个椭圆的像素的 alpha 分量的值是 160,因此这些椭圆与屏幕上的背景色相混合。 下面的插图显示代码示例的输出。 请注意,这些椭圆与背景相混合,但椭圆之间不进行混合。 ' Create a blank bitmap. Dim myBitmap As New Bitmap(180, 100) ' Create a Graphics object that we can use to draw on the bitmap. Dim bitmapGraphics As Graphics = Graphics.FromImage(myBitmap) ' Create a red brush and a green brush, each with an alpha value of 160. Dim redBrush As New SolidBrush(Color.FromArgb(160, 255, 0, 0)) Dim greenBrush As New SolidBrush(Color.FromArgb(160, 0, 255, 0)) ' Set the compositing mode so that when we draw overlapping ellipses, ' the colors of the ellipses are not blended. bitmapGraphics.CompositingMode = CompositingMode.SourceCopy ' Fill an ellipse using a red brush that has an alpha value of 160. bitmapGraphics.FillEllipse(redBrush, 0, 0, 150, 70) ' Fill a second ellipse using a green brush that has an alpha value of ' 160. The green ellipse overlaps the red ellipse, but the green is not ' blended with the red. bitmapGraphics.FillEllipse(greenBrush, 30, 30, 150, 70) 'Set the compositing quality of the form's Graphics object. e.Graphics.CompositingQuality = CompositingQuality.GammaCorrected ' Draw a multicolored background. Dim colorBrush As New SolidBrush(Color.Aqua) e.Graphics.FillRectangle(colorBrush, 200, 0, 60, 100) colorBrush.Color = Color.Yellow e.Graphics.FillRectangle(colorBrush, 260, 0, 60, 100) colorBrush.Color = Color.Fuchsia e.Graphics.FillRectangle(colorBrush, 320, 0, 60, 100) 'Display the bitmap on a white background. e.Graphics.DrawImage(myBitmap, 0, 0) ' Display the bitmap on a multicolored background. e.Graphics.DrawImage(myBitmap, 200, 0) // Create a blank bitmap. Bitmap myBitmap = new Bitmap(180, 100); // Create a Graphics object that we can use to draw on the bitmap. Graphics bitmapGraphics = Graphics.FromImage(myBitmap); // Create a red brush and a green brush, each with an alpha value of 160. SolidBrush redBrush = new SolidBrush(Color.FromArgb(160, 255, 0, 0)); SolidBrush greenBrush = new SolidBrush(Color.FromArgb(160, 0, 255, 0)); // Set the compositing mode so that when we draw overlapping ellipses, // the colors of the ellipses are not blended. bitmapGraphics.CompositingMode = CompositingMode.SourceCopy; // Fill an ellipse using a red brush that has an alpha value of 160. bitmapGraphics.FillEllipse(redBrush, 0, 0, 150, 70); // Fill a second ellipse using a green brush that has an alpha value of 160. // The green ellipse overlaps the red ellipse, but the green is not // blended with the red. bitmapGraphics.FillEllipse(greenBrush, 30, 30, 150, 70); // Set the compositing quality of the form's Graphics object. e.Graphics.CompositingQuality = CompositingQuality.GammaCorrected; // Draw a multicolored background. SolidBrush colorBrush = new SolidBrush(Color.Aqua); e.Graphics.FillRectangle(colorBrush, 200, 0, 60, 100); colorBrush.Color = Color.Yellow; e.Graphics.FillRectangle(colorBrush, 260, 0, 60, 100); colorBrush.Color = Color.Fuchsia; e.Graphics.FillRectangle(colorBrush, 320, 0, 60, 100); // Display the bitmap on a white background. e.Graphics.DrawImage(myBitmap, 0, 0); // Display the bitmap on a multicolored background. e.Graphics.DrawImage(myBitmap, 200, 0);
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
cad里面打完字怎么还原十字架 财务建帐需要什么 建账建账的基本要求 当爱情与亲情需要丢弃一样时,你会选择丢弃哪一方 当爱情和亲情有冲突时你会怎样决择?你会为你所爱的人不顾一切吗? 剑网三 查看余额 因为某些特殊原因不好登陆游戏查看,求其他方式_百度知 ... 右肺上叶中叶结节灶怎么回事 节能门窗有哪些标准 节能门窗有哪些 节能门窗具有哪些特征 六年级的第九课续写有谁可以帮帮忙啊!200以上 小学五年级作文400字:浴室”下雨”了 高一语文《拣麦穗》说课稿范文 玉米拌种防治二点委夜蛾用什么药 交通事故拘役期间怎么处理? 老师们二点委叶蛾的防治方法说说 交通肇事看守所拘留多久转逮捕? 出交通事故进看守所了还能不能协商 交通肇事罪拘留后再怎么处理 欠踹的背影歌词 脚步是天歌词dj版 我要郭采洁《隐形超人》歌词的英文版 知道这首歌的歌词是来自那首歌吗 I don't want to close my eyes ton... 妹妹长的跟哥哥小时候一模一样用什么词语来形容? 这兄妹哪里长得一样?我感觉感觉蛮像的。 我和我哥哥几乎长的一模一样(我哥哥比我大九岁),我是女的,我们长的是... 什么情况下一对兄妹会长得一模一样? 和亲兄妹长得很像是什么体验? 我想问一下北京梦幻长城球幕影院怎么样? 湖南少阳崀山距湖南岳阳临湘有多少公里 新闻里说的是真的吗? 可以把新闻说的更加简单些吗?我有些看不懂。 说新闻要注意什么 鳄龟需要水养吗,养鳄龟要用什么水 小鳄龟用什么水养比较好,水位多高合适 有些QQ空间鼠标后面有一排字跟着鼠标走,是怎么弄的? 唐朝诡事录里的仙长是谁 dnf那些职业技能伤害是固定伤害,要堆智力或者力量,哪些与自己的攻击力... 地下城与勇士dnf 我玩了一个狂战士 刚转职 高手告诉我下怎么+点 和一... 十种带草的植物 seek to加动词的什么形式? itookthechildrentothezoo正确吗? 请问throng和crowd的区别 英语中a crowd at the door这话连读时,音标d和at中的a连读,那at后面的... 子午线轮胎12.00R20-16PRSH是什么意思 Personal,Lily is an excellent learner改错? 请帮忙改错,谢谢! 为什么送葬的纸人叫得用呢? 奇怪的紫微格局,高手请进 影响货币需求的因素主要有( )。