ImageGrab 模組

ImageGrab 模組可用於將螢幕或剪貼簿的內容複製到 PIL 影像記憶體中。

於 1.1.3 版本新增。

PIL.ImageGrab.grab(bbox=None, include_layered_windows=False, all_screens=False, xdisplay=None)[來源]

拍攝螢幕快照。邊界框內的像素在 macOS 上會以「RGBA」傳回,否則會以「RGB」影像傳回。如果省略邊界框,則會複製整個螢幕,並且在 macOS 上,如果使用 Retina 螢幕,則會以 2 倍顯示。

在 Linux 上,如果 xdisplayNone 且預設 X11 顯示器未傳回螢幕快照,則如果已安裝 gnome-screenshot,則會將其作為後備使用。若要停用此行為,請改為傳遞 xdisplay=""

於 1.1.3 版本新增:(Windows)、3.0.0 (macOS)、7.1.0 (Linux)

參數:
  • bbox – 要複製的區域。預設為整個螢幕。在 macOS 上,這不會針對 Retina 螢幕增加到 2 倍,因此 Retina 螢幕的完整寬度將為 1440,而不是 2880。在 Windows 上,如果使用 all_screens=True,則左上角點可能為負值。

  • include_layered_windows

    包括分層視窗。僅限 Windows 作業系統。

    於 6.1.0 版本新增。

  • all_screens

    擷取所有監視器。僅限 Windows 作業系統。

    於 6.2.0 版本新增。

  • xdisplay

    X11 顯示器位址。傳遞 None 以擷取預設系統螢幕。傳遞 "" 以擷取 Windows 或 macOS 上的預設 X11 螢幕。

    您可以使用 PIL.features.check_feature()feature="xcb" 來檢查 X11 支援。

    於 7.1.0 版本新增。

傳回:

影像

PIL.ImageGrab.grabclipboard()[來源]

拍攝剪貼簿影像的快照 (如果有)。

在 Linux 上,需要 wl-pastexclip

於 1.1.4 版本新增:(Windows)、3.3.0 (macOS)、9.4.0 (Linux)

傳回:

在 Windows 上,如果剪貼簿不包含影像資料或檔案名稱,則會傳回影像、檔案名稱清單或 None。請注意,如果傳回清單,則檔案名稱可能不代表影像檔。

在 Mac 上,如果剪貼簿不包含影像資料,則會傳回影像或 None。

在 Linux 上,傳回影像。