.net – WPF – 控制半透明层之间的混合

.net – WPF – 控制半透明层之间的混合,第1张

概述在数字成像中,当覆盖两个视觉层时,有多种方法可以计算图像,当来自较低层的光以某种方式照射通过障碍层时会产生图像.这可以提供不会出现自然现象的效果,例如倍增颜色. 以下是Photoshop中提供的图层混合模式菜单的示例: http://www.psdtop.com/blog/wp-content/images/020_Blending-Modes/blending-mode.jpg 如果这个主题不是 在数字成像中,当覆盖两个视觉层时,有多种方法可以计算图像,当来自较低层的光以某种方式照射通过障碍层时会产生图像.这可以提供不会出现自然现象的效果,例如倍增颜色.

以下是Photoshop中提供的图层混合模式菜单的示例:

http://www.psdtop.com/blog/wp-content/images/020_Blending-Modes/blending-mode.jpg

如果这个主题不是您熟悉的话,我建议您访问文章Understanding Blending Modes.它提供了针对两个层的每个选项的结果的精彩展示.

据我所知,WPF只提供“正常”选项.也就是说,以下UI只是混合颜色,就像它们是彩色凝胶一样:

<GrID>  <Ellipse WIDth="40" Height="40" Fill="#80FF0000" margin="16,0" />  <Ellipse WIDth="40" Height="40" Fill="#8000FF00" margin="32,32,0" />  <Ellipse WIDth="40" Height="40" Fill="#800000FF" margin="0,0" /></GrID>

看起来像这样:

http://img4.imageshack.us/img4/5541/temprx.png

我想知道是否有任何方法可以控制图层混合的方式.

解决方法 您正在寻找的是混合模式,如果你Google它你会发现很多
.
这是一个简单的 example如何使用像素着色器实现它.你会使用 multi-input shader effect.

这是一个非常好的complete tutorial,它引导您使用多输入着色器效果创建可重复使用的混合模式库.

混合模式作为WPF API的固有部分,自早期的CTP以来经常是requested,但从未将其作为产品.

总结

以上是内存溢出为你收集整理的.net – WPF – 控制半透明之间的混合全部内容,希望文章能够帮你解决.net – WPF – 控制半透明层之间的混合所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1078946.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存