当前位置: 代码迷 >> QT开发 >> 操作framebuffer显示图片实现背景透明效果-期待
  详细解决方案

操作framebuffer显示图片实现背景透明效果-期待

热度:320   发布时间:2016-04-25 05:00:50.0
操作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是否可行~