很奇怪,文字做透明帖图的时候会出现白色的阴影....
但是在字体大小为12-16之间的时候,正常,没有白色阴影...
其他的字体,均会出现白色阴影.请大家出出主意,怎么解决

解决方案 »

  1.   

    就是DRAWTEXT一段文字在一张内存BMP上,然后透明(去背景色,只留文字)的贴在目标图片上.代码比较分散啊,贴上来会是好几大段,估计又没人会花时间看希望做过GDI的高手,分析下可能的情况
      

  2.   

    你内存的BMP是白底的吧?写字上去的时候系统会在字的边缘做抗锯齿处理,也就是和底色做一些混合。这时你再把白色改成透明色文字边缘就会留下“白色阴影”(其实是字体颜色和白色的过渡色)。
    解决办法也很简单,只要使用32位有Alphi通道的BMP就行了。
      

  3.   

    貌似有点眉目了,突然发现一个问题,跟视图DC兼容的内存图 和 跟窗口DC兼容的内存图有区别吗 
      

  4.   

    pdc->BitBlt (rect.left,rect.top,rect.Width (),rect.Height (),&memdcB,tempI,0,SRCAND);
    pdc->BitBlt (rect.left,rect.top,rect.Width (),rect.Height (),&memdcA,tempI,0,SRCPAINT);
    pdc 是 窗口的DC,而memdcB,memdcA是和视图DC兼容的内存BMP另外,恕我愚昧..如何创建32位BMP...
      

  5.   

    晕,我已经不知所措了,我把字体从 ARIAL 换成 COURIER 就好了,换成宋体也不行,难道我得把不行的字体都挑出来,只提供不会出问题的字体让用户选择....