[*]API绘图问题[*]

gaoqi5037 2002-06-06 11:48:56
现有两个DC图像..DCa,DCb 我想把DCa作为背景..DCb与DCa作任意透明度的合成..
速度一定要快...
最好给出代码示例..My E-Mail: gaoqi2@sina.com
谢谢大家!!
...全文
30 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
gaoqi5037 2002-06-07
  • 打赏
  • 举报
回复
UP
songyangk 2002-06-06
  • 打赏
  • 举报
回复
最好用C做,要么就是用HOOK
gaoqi5037 2002-06-06
  • 打赏
  • 举报
回复
自已UP
在线等
gaoqi5037 2002-06-06
  • 打赏
  • 举报
回复
自已UP,,需要更多的答案!!
bestofbest 2002-06-06
  • 打赏
  • 举报
回复
UP

这方面,我确实还没入门


人总是要成长的,让我们大家一起在CSDN里成长为新一代的高手吧!
想吵架的人闪一边去,我们只来学习,不学习的请安静!!!
TechnoFantasy 2002-06-06
  • 打赏
  • 举报
回复
用API叠加两个DC,可设置透明度:
http://www.applevb.com/art/halftran.txt
用AlphaBlend叠加:
http://www.applevb.com/art/alphablend.txt
Montaque 2002-06-06
  • 打赏
  • 举报
回复
看一下这方面的帮助
zyl910 2002-06-06
  • 打赏
  • 举报
回复
逐点算,计算透明后的颜色

透明度计算函数
Public Function TMC(TMD As Single, UpC As Long, DnC As Long) As Long
'TMD:透明度。0:完全透明;1:不透明。
'UpC:上层色
'DownC:下层色
Dim UpR As Long, UpG As Long, UpB As Long
Dim DnR As Long, DnG As Long, DnB As Long
Dim OutR As Long, OutG As Long, OutB As Long

UpR = UpC And &HFF
UpG = (UpC And &HFF00&) \ &H100
UpB = (UpC And &HFF0000) \ &H10000
DnR = DnC And &HFF
DnG = (DnC And &HFF00&) \ &H100
DnB = (DnC And &HFF0000) \ &H10000

OutR = DnR + CLng((UpR - DnR) * TMD)
If OutR < 0 Then OutR = 0
If OutR > 255 Then OutR = 255
OutG = DnG + CLng((UpG - DnG) * TMD)
If OutG < 0 Then OutG = 0
If OutG > 255 Then OutG = 255
OutB = DnB + CLng((UpB - DnB) * TMD)
If OutB < 0 Then OutB = 0
If OutB > 255 Then OutB = 255
TMC = RGB(OutR, OutG, OutB) ' OutR + OutG * &H100& + OutB * &H10000

End Function

如果要求速度
要使用DIB
一个例子:http://www.21code.com/codebase/?pos=down&id=1754
JYQing 2002-06-06
  • 打赏
  • 举报
回复
使用API函数AlphaBlend就可以解决了

1,486

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧