Поэтому я создал графическую программу Turtle, в которой пользователь может рисовать множество различных фигур на холсте, и реализовал возможность для пользователя сохранять холст под своим собственным именем в виде файла Postscript (.ps) с помощью файлового браузера. . Файл, по-видимому, без проблем открывается в Preview на моем Macintosh. Я также разрешил пользователю импортировать ЛЮБОЕ изображение .gif, которое он хочет, и установить его в качестве цвета холста окна или даже просто установить сплошной цвет, если он не хочет использовать изображение. Однако я заметил, что всякий раз, когда я изменяю ТОЛЬКО цвет холста окна, сохраняю его как файл postscript, а затем открываю его, цвет холста НЕ отображается, но остальные цвета есть, в том числе черепаший. Что еще более странно, так это то, что если вместо этого я устанавливаю изображение в качестве холста, оно отображается в сохраненном файле постскриптума вместе со всем остальным. Итак, почему это происходит и как это исправить? Мы очень ценим любую помощь! :)
PS Я уже видел похожий вопрос, но он относится к Python 2.x, а у меня 3.5. Мне также не нравится решение этого вопроса, и я надеюсь, что сейчас есть другой, лучший способ исправить это.
Вот мой код сохранения:
def savefirst():
cnv = getscreen().getcanvas()
global hel
hel = filedialog.asksaveasfilename(defaultextension = '.ps')
fev = cnv.postscript(file = hel, colormode = 'color')
try:
if open(hel, 'r'):
savefirst.save = True
except:
savefirst.save = False
А вот скриншот самого холста в сравнении со скриншотом файла Postscript-
Скриншот файла Postscript (в предварительном просмотре):
РЕДАКТИРОВАТЬ: Я много искал, но не могу найти ответ, который подходит для Python 3.x.