社区
Symbian
帖子详情
如何在一个Label上画Gif图
广印大叔
2008-03-04 01:35:23
如果是BMP的图的话,可以把它编到mbm文件中并按照如下方式使用
gc.BitBlt(TPoint(0, 0), iBitmap);
现在问题是这样的 我现在有一个Gif小图 我要把它画在一个Label上面,因为Gif有一部分是Alpha透明的,需要把背景透上来。
不知道应该如何处理?
请指教!
...全文
269
8
打赏
收藏
如何在一个Label上画Gif图
如果是BMP的图的话,可以把它编到mbm文件中并按照如下方式使用 gc.BitBlt(TPoint(0, 0), iBitmap); 现在问题是这样的 我现在有一个Gif小图 我要把它画在一个Label上面,因为Gif有一部分是Alpha透明的,需要把背景透上来。 不知道应该如何处理? 请指教!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
matchboy
2008-03-21
打赏
举报
回复
mark
002大破天幕杀机
2008-03-19
打赏
举报
回复
有一个函数TransparentBlt,可以实现把gif图片透明到label上。mobile上是这样实现的。另外,Bitblt也可以实现把位图的指定部分截取出来
dyw
2008-03-14
打赏
举报
回复
Gif animation for symbian 2nd and 3rd edition phones
http://wiki.forum.nokia.com/index.php/Gif_animation_for_symbian_2nd_and_3rd_edition_phones
如果使用位图,搞个定时器,按顺序不断绘制每个图便是。
广印大叔
2008-03-11
打赏
举报
回复
再次顶起来
广印大叔
2008-03-06
打赏
举报
回复
呵呵
alexlee002
2008-03-05
打赏
举报
回复
3rd:drawBitMapMask()
2nd BitBltMask()
jmulxg
2008-03-05
打赏
举报
回复
只能 mark,等答案
广印大叔
2008-03-05
打赏
举报
回复
首先,不用Gif图了
我现在用bmp图来实现
我的背景图片为240×200的
Label的大小也为240×200
我要在位置为TPoint(40, 0)的位置画一个40×40的Mask图 也就是 透明的图 需要把背景图透上来
我们先来分析一下下面这个函数
BitBltMasked(const TPoint& aPoint,const CFbsBitmap* aBitmap,const TRect& aSourceRect,const CFbsBitmap* aMaskBitmap,TBool aInvertMask);
第一个参数 画图的位置
第二个参数 原图 也就是背景图
第三个参数 在原图的什么位置画遮罩也就是Mask图
第四个参数 Mask图
第五个参数 先不关注
如果Mask比原图小的话 就会平铺
要通过此函数实现的话我可以这么实现
BitBltMasked(TPoint(40, 0), aBitmap, TRect(TPoint(0, 0), aMaskBitmap->SizeInPixcels()), aMaskBitmap, ETrue);
aBitmap 是我从原图40,0的位置拷贝下来的大小为aMaskBitmap->SizeInPixcels()的图
这样做是肯定可以实现的 但是我的问题在于如何在原图上面复制下来一部分做为新图?
或许各位另有高见,请指教!
Symbian
3,119
社区成员
9,182
社区内容
发帖
与我相关
我的任务
Symbian
塞班系统(Symbian系统)是塞班公司为手机而设计的操作系统,它的前身是英国宝意昂公司的 EP ( Electronic Piece of cheese)操作系统。
复制链接
扫一扫
分享
社区描述
塞班系统(Symbian系统)是塞班公司为手机而设计的操作系统,它的前身是英国宝意昂公司的 EP ( Electronic Piece of cheese)操作系统。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章