def get_pixel_colour(self, i_x, i_y):
i_desktop_window_id = win32gui.GetDesktopWindow()
i_desktop_window_dc = win32gui.GetWindowDC(i_desktop_window_id)
long_colour = win32gui.GetPixel(i_desktop_window_dc, i_x, i_y)
i_colour = int(long_colour)
return (i_colour & 0xff), ((i_colour >> 8) & 0xff), ((i_colour >> 16) & 0xff)
Это в основном то, что у меня есть, но кто-то другой написал это.
Мне известен такой подход , и я написал версию своего кода с использованием PIL , он работает нормально.
Однако я пытаюсь улучшить производительность моего кода. Есть ли способ сделать это
, но по-другому? Я пытаюсь избежать PIL или функции
color = GetPixel(hDC, p.x, p.y)
.
Есть ли подход под названием "BitBlt?