layeredwindow上面的gdi文字绘制问题

lineCode 2013-05-06 09:03:35
在layeredwindow上面用gdi的drawtext会导致透明通道为0为题,大家有什么好的方法没有
目前我找到两种方法
1.绘制前将原图所有alpha+1,drawtext后将所有alpha-1,这样绘制文字的地方alpha就会为255了
2.记录drawtext以前的所有alpha,drawtext后恢复所有alpha

做过类似的大侠们有啥好方法啊
...全文
108 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
lineCode 2013-05-06
  • 打赏
  • 举报
回复
的确 只有宋体还比较清晰 其他的都不怎么清晰
sumos 2013-05-06
  • 打赏
  • 举报
回复
我以前也找过,不过并不理想。 gdi可以绘制带alpha文字,不过要借助CBitmap::GetBitmapBits 和DWORD SetBitmapBits( DWORD dwCount, const void* lpBits ); 而且字体本身不可以带alpha(比如微软雅黑就不行),字体最好是宋体,大小不超过13。

15,980

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧