我正在尝试在Windows 10上使用Python的Pillow来截取应用程序的屏幕截图。 此应用程序直接与graphics卡交互,因此不会在程序中获取图像,而是返回黑色图像。 我怎样才能从这个应用程序提供的graphics截图。
这里有不同的方法,我尝试了PILimport当然。
im=ImageGrab.grab() ImageGrab.grab_to_file('im.png') hwnd = win32gui.GetForegroundWindow() wDC = win32gui.GetWindowDC(hwnd) dcObj=win32ui.CreateDCFromHandle(wDC) cDC=dcObj.CreateCompatibleDC() dataBitMap = win32ui.CreateBitmap() dataBitMap.CreateCompatibleBitmap(dcObj, w, h) cDC.SelectObject(dataBitMap) cDC.BitBlt((0,0),(w, h) , dcObj, (0,0), win32con.SRCCOPY) dataBitMap.SaveBitmapFile(cDC, 'tmp.bmp') # Free Resources dcObj.DeleteDC() cDC.DeleteDC() win32gui.ReleaseDC(hwnd, wDC) win32gui.DeleteObject(dataBitMap.GetHandle())