symbian 实现图片透明
来源:互联网 发布:怎么查看淘宝卖家地址 编辑:程序博客网 时间:2024/05/05 16:14
透明前
透明后
实现方法:
是用MARK来实现的。
map=bitmap;
ibitmapMask = new ( ELeave ) CFbsBitmap();
TInt err = ibitmapMask->Create(map->SizeInPixels(), EGray256);
if (err == KErrNone)
{
CFbsBitmapDevice *aGD = CFbsBitmapDevice::NewL(ibitmapMask);
CleanupStack::PushL(aGD);
CFbsBitGc *aGC = NULL;
User::LeaveIfError(aGD->CreateContext(aGC));
aGC->SetPenStyle(CGraphicsContext::ENullPen);
aGC->SetBrushColor(TRgb(100,100,100)); // color 的颜色随意,会影响透明度
aGC->SetBrushStyle(CGraphicsContext::ESolidBrush);
aGC->DrawRect(TRect(TPoint(0, 0), map->SizeInPixels()));
aGC->SetBrushStyle(CGraphicsContext::ENullBrush);
delete aGC;
CleanupStack::PopAndDestroy(aGD);
}
图片透明效果:
virtual void DrawBitmapMasked(const TRect &aDestRect, const CFbsBitmap *aBitmap, const TRect &aSourceRect, const CFbsBitmap *aMaskBitmap, TBool aInvertMask)=0;
图像的透明显示就是图像的一部分被真实地显示在屏幕上,而其余部分则被屏幕的背景所取代。
为了实现透明或者半透明的效果,一般我们用到一张掩码位图。它实际是一个黑白位图,作用是对其它位图的可见部分进行限制。它由两部分组成,不透明部分和透明部分。当TBool aInvertMask
为ETrue时,白色部分为透明部分。
color 的值为TRgb(255*x,255*x,255*x) x为透明度百分比。
原图TRgb(a1,a2,a3) 背景图TRgb(b1,b2,b3)
与背景色形成新的Rgb值(显示的Rgb)值为
TRgb(a1*x+b1*(1-x),a2*x+b2*(1-x),a3*x+b3*(1-x))
- symbian 实现图片透明
- Symbian图片透明设置
- Symbian图片透明设置
- Symbian 图片透明效果
- Symbian 图片透明效果
- Symbian 图片透明效果
- symbian 同步解码透明图片
- c# 实现透明窗体,透明图片,透明按钮
- Js实现图片透明效果
- j2me实现图片透明效果
- C# 实现渐变透明图片
- IE6实现PNG图片透明
- Overlay实现叠加透明图片
- symbian中的透明位图
- symbian 窗体透明
- wxWidgets 不规则透明WinForm窗体(通过透明图片实现)
- CSS实现PNG图片背景透明效果
- 关于图片透明效果的实现
- 咏龙
- 去碧水湾泡温泉--小记
- Dojo的TabContainer控件切换标签事件的编写方法
- ORACLE中的KEEP()使用方法
- 项目中遇到一个需求,需要将多行合并为一行
- symbian 实现图片透明
- Oracle 多实例环境数据库的导入导出(imp exp)
- PHP的前景
- JQuery真的是够强大
- .Net下的分布式缓存--从Discuz!NT的缓存设计谈起
- js多窗口的实现
- 技术类相关网站
- 可编辑表格TableCell
- servler entry in web.xml