日期:2014-05-18  浏览次数:21302 次

A图片渐变成B图片
我想要的效果就像Win7的桌面背景切换,渐变的。或者ie9的按钮渐变。

------解决方案--------------------
将a和b做alpha混合。
控制混合比例,就可以实现淡入淡出切换效果。
------解决方案--------------------
Bitmap 对象也可以设取 任一點的顏色
方法:SetPixel(x,y,color);
你可以搞兩個Image对象,

可以 用 一个比数,
比如从 for i = 1~10;
colorTarget .SetPixel(x,y,Color1 *i/10+Color2 *(10-i)/10);
------解决方案--------------------
Bitmap对象处理图像像素的效率太低了,要处理的话,还是用不安全代码快些,直接处理内存。
------解决方案--------------------
这个好办,C#不是封装了GDI+了吗?
C# code

Image img = new Image();
Image img1.....杜如文件1
Image img2.....杜如文件2
Graphices g = Graphices.FromImage(img);
for()
{
    Img1.AlphaBlend(img,...);
    Img2.AlphaBlend(img,...);
    //img合成好的图像,绘制到你想输出的地方
}
g.ReleaseDC();

------解决方案--------------------
"将a和b做alpha混合。"学习了

------解决方案--------------------
dotnetbar 有這樣效果啊
------解决方案--------------------
直接可以用就是特效,整一个计时器
------解决方案--------------------
探讨

引用:
你直接用Flash做一个GIF动画得了,一分钟都不要。反正是要用图片,为何不用GIF的呢?

gif?
没有办法控制它 什么时候变色。 gif 只能有一次 n次,永远 循环,
按你这么说:
不如用photoShop 做两个图片 的过度N张图片,然后用C# 一一调用。
可是 这大大增加了程序的体积啊。