Как в python tkinter сохранить состояние Canvas?

как мне сохранить состояние Canvas?
пробивал это:
##
from tkinter import *
tk = Tk()
canvas = Canvas(tk, width=700, height=789)
canvas.pack()
canvas.create_oval(400,400,700,700, fill="red")
tk.update()
canvas.postscript(file="my_dram.png", colormode="color")

но оно лишь создает файл PNG без картинки.
а мне нужна картинка...
  • Вопрос задан
  • 1827 просмотров
Пригласить эксперта
Ответы на вопрос 1
@o5a
Эта команда создает формат не PNG, а Postscript. Можно его открыть в программе, понимающей данный формат.
Или преобразовать в PNG с помощью PIL (но в системе должно быть установлено что-то, поддерживающее формат, например Ghostscript)

# после создания нашего PS
canvas.postscript(file="my_dram.ps", colormode="color")

# преобразовываем в PNG
from PIL import Image

img = Image.open("my_dram.ps")
img.save("my_dram.png", "png")
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы