【发布时间】:2018-05-15 20:04:55
【问题描述】:
在 Windows 窗体下,我截取具有特定窗口大小的特定窗口的全尺寸屏幕截图,将其保存到 Bitmap 对象中,然后,我声明了一个 Rectangle 结构来裁剪该 Bitmap 的一个区域,因为稍后我只需要操作屏幕截图的一个非常特定的部分/区域...
为了让这个问题更简单,假设窗口和位图大小为 640x480,矩形的 X,Y 为:436,150,宽度,高度为:146,170,我从屏幕截图(位图)中裁剪的是气球图像。这个窗口是一个电子游戏。
问题在于,当窗口大小增加时,气球图像也会增加,这很明显,因此对于 640x480 的窗口大小,我的矩形的 x、y 和宽度/高度将无法正确捕获/裁剪整个气球图像当游戏窗口变大时...
我需要知道如何计算我的矩形在窗口大小发生变化时正确裁剪气球图像所需的 x,y 宽度/高度。我需要调整矩形。
所以,如果这是我预定义的大小和矩形:
{ new Size(640, 480), new Rectangle(436, 150, 146, 170) }
据此,矩形在 800x600 和 1280x768 的窗口大小中正确裁剪相同等效区域时应具有的近似适应值或多或少如下:
{ new Size(800, 600), new Rectangle(546, 186, 186, 212) }
{ new Size(1280, 768), new Rectangle(830, 232, 240, 274) }
...只是近似值,但并不完美,因为我不确定这是计算和自动化此数学运算的方法,因此我是手动完成的。
我希望我的问题和问题得到理解。提前谢谢你。
【问题讨论】: