如题,函数外观如下:
public function RemixPic(B as StdPicture,T as StdPicture,MarkColor as long) as StdPictureend function注意:1、要求能合成一个StdPicture对象,2、内存操作请高手解答!
public function RemixPic(B as StdPicture,T as StdPicture,MarkColor as long) as StdPictureend function注意:1、要求能合成一个StdPicture对象,2、内存操作请高手解答!
解决方案 »
- 1、编写程序,要求单击窗体时在窗体中输出所有3位的素数,一行输出10个素数。
- 请教FTP命令被动(PASV)
- 水晶报表如何把子报表的内容在主报表中同时显示,而不是链接?谢谢~
- 如何使用ADO连接Oracle数据库?
- 如何在textbox里面控制其只能输入两位小数。即小数点后面只能输入两位。
- 当打开的表的名称里面有空格的时候该怎么打开它?
- 急急!关于sql的安全性问题?
- 50分请问:如何使用ADO直接调用Access中的查询?
- 怎样设置richtextbox行间距至单倍行间距以内,甚至将其设置为0???
- 关于利用sql语句在access数据库复制在同一个表格中复制整条记录
- 急,“有挂起更改的行数已超过限制!”请问下面这段代码问题出现在什么地方?
- ADO里SQL连接字串中data source时而需要设为ip,时而需要设成服务器名为什么啊
public function RemixPic(B as StdPicture,T as StdPicture,MarkColor as long,X as long,Y as long) as StdPicture'B:背景图
'T:前景图
'MarkColor :去掉前景图中的指定色
'X,Y:在指定的X,Y点混合如果超出背景图,不做处理(即裁掉超出背景图部分)。
'返回合成后的StdPicture对象
end functionTO VBToy(无证编程): 应该与 and,xor 无关,我只要能扫描像素点能做处理就成。重点在于将两个StdPicture合成一个。TO kmlxk(xiaoKKKK):bitblt 我试过,能叠加,但不是合成方式。(即能显示两张图片在一起,但再引用时,只是一张背景图。)TO laviewpbt(人一定要靠自己) :你水平很高的说,请做答,不要说空话。白混了两颗星了。
叠加种类很多,常见需求的一般有两类:一是透明,一是Alpha混合。
前者用transparentblt可完成,后者用AlphaBlend可完成
当然若基于位图Bit,自己处理数据也可以,但若没有特殊需求,没这必要。补充:以上都是要靠API来完成的,所以直接用hDC、hBmp传入会更方便,用StdPicture有些自废武功的味道,会影响效率的。若LZ仅是我前面列出的两种需求之一,几乎可以不用再写函数,一句API能直接搞定。
请参看
http://esnstudio.blog.sohu.com/52396049.html
不管如何,首先肯定得创建两个DC,然后把这两个StdPicture选进去。
再创建一个目标DC,选进一个新的StdPicture作为结果。然后就是AlphaBlend和TransparentBlt函数的调用了,前者用于Alpha混合,后者用于去除关键色,具体步骤根据自己想要的效果进行调用即可。不过就你的要求来看可能还需要临时DC。不知道LZ想要用它来干吗,不过实际中很少有这么用的,要实现这样的功能一般都直接选择带Alpha通道DIB了,没有这么麻烦的。
vb 中使用MMControl播音的时候,资源被占用了,其他程序模块都需要等待播音结束才运行,如何解决