日期:2014-05-17  浏览次数:20915 次

请教在用GetHdc抓图时怎样让这种模糊图转成这种清晰图?
本帖最后由 dealda 于 2013-12-28 17:16:07 编辑
如下所示:
http://img.my.csdn.net/uploads/201312/28/1388221900_3540.jpg

左图是我在本地抓图,右图是我在远程桌面状态下抓图,输出效果完全不同,我需要右图的效果,谢谢

------解决方案--------------------
左侧的图说明屏幕输出的是带有抗锯齿效果的图。右侧的是没有抗锯齿效果的。
你说你用远程桌面连接得到的是右侧的图,由这么两种可能:
1.远程桌面软件直接获得了屏幕的输出过程(而不是输出结果位图),并且指示这一过程不需要进行抗锯齿处理。
2.还是屏幕截图,进行了调色板处理,例如转换为图像质量更低的效果。
由于你的图太粗略了,不好判断。你最好找个带有复杂图片背景的,以便判断远程桌面的显示效果是获取并控制了底层输出得到的还是仅仅做了图片处理。
如果是1,那么根本就不是屏幕截图。我也不知道能不能让计算机将屏幕内容重新在指定的画布上按照指定的参数输出一遍,大家可以一起找找资料。
如果是2,你关注下CopyPixelOperation,这里有几种转换效果。看看能不能用调色板参数得到比较理想的效果。
或者,如果你仅仅是要文字的部分以便识别,还可以尝试转换为16位图片,甚至处理为黑白域图片。