【发布时间】:2011-04-22 10:15:15
【问题描述】:
使用GetPixel,在每次WM_PAINT调用绘制后,检索HDC临时存储的像素信息是正确的吗?
【问题讨论】:
使用GetPixel,在每次WM_PAINT调用绘制后,检索HDC临时存储的像素信息是正确的吗?
【问题讨论】:
它将获得在 HDC 中选择的任何位图的 x,y 像素值。
http://msdn.microsoft.com/en-us/library/dd144909%28VS.85%29.aspx
如果我没记错的话,GetPixel 相当慢。根据您想要做什么,直接访问原始位图数据可能会快很多。
【讨论】:
BeginPaint() 和@987654324 之间@你的位图可能不同步。)Raymond Chen最近就这个话题写了:blogs.msdn.com/b/oldnewthing/archive/2010/09/23/10066473.aspx。你当然可以通过调用GdiFlush 来“修复”这个问题,就像GetPixel 一样。但这可能只会使直接访问与首先调用 GetPixel 一样慢。
视情况而定,并非所有设备都支持 GetPixel。应用程序应调用 GetDeviceCaps 来确定指定设备是否支持此功能。
【讨论】: