Скриншот рабочего окна tkinter python
Как сделать скриншот рабочей области, которая сгенерировалась с помощью библиотеки tkinter?
Ответы (2 шт):
Автор решения: Victor VosMottor thanks Monica
→ Ссылка
from pyscreenshot import grab
im = grab(bbox=(100, 200, 300, 400))
im.show()
pip3 install pillow
from PIL import ImageGrab
snapshot = ImageGrab.grab()
save_path = "your/save/path"
snapshot.save(save_path)
pip3 install pyautogui
import pyautogui
screenshot = pyautogui.screenshot('path/to/file.png')
Автор решения: FotonPC
→ Ссылка
Можно так, с помощью tkinter и pillow:
import tkinter as tk
from tkinter import filedialog as fd
from PIL import ImageGrab
root = tk.Tk()
def make_screenshot():
otx, oty = map(int, root.geometry().split('+')[1:])
width = int(root.geometry().split('x')[0]) + 50
height = int(root.geomtry().split('+')[0].split('x')[1]) + 3
scr = ImageGrab.grab(bbox = (otx, oty, otx+width, oty+height))
path = fd.asksaveasfilename()
src.save(path)
tk.Button(root, text = 'Сделать скриншот', command = make_screenshot).pack()
root.mainloop()