如何将Windows屏幕坐标转换为屏幕截图像​​素坐标?

问题描述:

我需要找到截图上的控件。我有它的屏幕坐标。我如何将它们转换为屏幕截图上的坐标?如何将Windows屏幕坐标转换为屏幕截图像​​素坐标?

这一切都取决于屏幕截图的大小和当前分辨率的大小。

假设屏幕截图为800x600,但您的当前屏幕分辨率为1280x720。为了找出800x600图像上的X,Y位置,您需要在1280x720屏幕上对X,Y的值进行归一化。

normalized_x = (x * 800)/1280; 
normalized_y = (y * 600)/720; 

请注意,您要查找的对象在800x600图像上也较小。所以:

// w and h represents the size of the object at 1280x720 
normalized_w = (w * 800)/1280; 
normalized_w = (h * 600)/720;