我们遗留应用程序中的视图正在使用 StretchDIBits 显示图像。如果您不熟悉 StretchDIBits,它用于在 MFC 视图上将给定尺寸的图像显示为另一种尺寸。例如,使用该函数可以在 (512,512) 上显示大小为 (128,120) 的图像。
在显示的宽度或高度是图像宽度或高度的倍数的简单条件下,我可以毫无问题地从显示位置计算原始图像中像素的位置。但在另一种情况下,我想我需要知道 StretchDIBits 如何将像素从原始图像分配到给定大小的显示矩形,尤其是当两者的大小之间没有倍数时。