读书人

操作framebuffer显示图片实现背景透明

发布时间: 2012-03-30 17:32:09 作者: rapoo

操作framebuffer显示图片实现背景透明效果--期待高手指点
现在,有一个小程序要实现滚动字幕的功能,为了提高效率,使用的是直接用QImage生成文字图片bmp格式的,然后,
在把每个像素的值拷贝到对应的framebuffer里面。采用的是QImage::Format_ARGB32图片格式 32位色深。

期待大家能给出解决方法。 谢谢

[解决办法]
你生成的文字图片背景采用一种你不常用的颜色作为掩码色,我一般是用的RGB(255,0,255).
然后你再生成一个掩码QImage就是透明的了:
QImage mask = sourceImage->createMaskFromColor(qRgb(mask.red(),mask.green(),mask.blue()), Qt::MaskOutColor);
[解决办法]
显示字体的控件重载一下,让字体显示时起始位置不断变化也行。
[解决办法]
你试一下setStyleSheet是否可行~

读书人网 >QT开发

热点推荐