Cách tạo ảnh chụp màn hình với python, nếu được kết nối với nhiều màn hình?Ảnh chụp màn hình của Python 2+ (cửa sổ)
tôi đã cố gắng:
import sys
from PyQt4.QtGui import QPixmap, QApplication
app = QApplication(sys.argv)
QPixmap.grabWindow(QApplication.desktop().winId()).save('test.png', 'png')
import ImageGrab
im = ImageGrab.grab()
im.save('test.png', 'PNG')
Cả hai tùy chọn cung cấp một ảnh chụp màn hình, chỉ có màn hình chính
Nếu tôi sử dụng WINAPI:
hWnd = win32gui.FindWindow(None, win_name)
dc = win32gui.GetWindowDC(hWnd)
i_colour = int(win32gui.GetPixel(dc,int(x),int(y)))
rgb = ((i_colour & 0xff), ((i_colour >> 8) & 0xff), ((i_colour >> 16) & 0xff))
tôi nhận được một bức tranh từ một cửa sổ trong lần thứ hai màn hình. Nhưng nó sẽ rất chậm.
Nếu tôi bấm phím 'màn hình in' trong khay nhớ tạm sẽ là ảnh chụp màn hình bình thường, với tất cả màn hình. Có một tùy chọn để có được một ảnh chụp màn hình đầy đủ trong Python?
Làm thế nào để lưu tệp, bạn có thể sử dụng bitmap này trong PIL? Image.open() – Echeg