关于使用AlphaBlend函数进行透明化处理的问题!!狂风暴雨中狂奔三百六十公里狂爬三百六十座山腾空狂跃三百六十度翻滚落地深鞠一躬向您发
我想得到雷达扫描的画面,要扫描后的区域渐渐淡入的效果,扫描留下的是绿色(或红色或蓝色)尾巴,我的底色是黑色,我用AlphaBlend函数对扫描过的区域进行透明化处理,每个循环透明化处理一次
BLENDFUNCTION UPUn_blend={AC_SRC_OVER,0,100,0};//进行透明化处理所定义的变量。
if(PerCount++>=50)
{
::AlphaBlend(UpGraph->Canvas->Handle,0,0,PdisplayW,PdisplayH,UnderGraph->Canvas->Handle,0,0,PdisplayW,PdisplayH,UPUn_blend); //进行混合透明处理, 即余晖的消除。
PerCount=0; //将周期计数重新置零。
}
问题是,我虽然能实现淡入的效果,可就是最后总是不能完全透明化(变为黑色),总是有淡淡的颜色残留。好像这种混合有什么算法吗???最好有代码。谢谢赐教!!
email: mamingquan968@126.com