У меня есть следующий код:
from kivy.app import App
from kivy.uix.image import Image
class MyApp(App):
def build(self):
my_image = Image(source='test.png')
with my_image.canvas:
Triangle(point=(0, 0, 30, 30, 60, 0))
my_image.export_to_png('test2.png')
my_image.export_as_image().save('test3.png')
return my_image
myapp = MyApp().run()
Ожидаемым результатом его выполнения должны быть две копии 'test.png' с именами 'test2.png' и 'test3.png с добавленным треугольником на них. Однако создаются два файла только с треугольниками без исходной текстуры. В чем ошибка и как мне экспортировать виджеты в png?
РЕДАКТИРОВАТЬ: Я провел свое исследование и обнаружил, что это вызвано тем, что эти функции (я уверен только в image.export_to_png
но image.export_as_image
дает тот же результат) экспортировать не сам виджет, а холст виджета. Это приводит меня к двум вопросам:
1) Как мне экспортировать измененное изображение, но не сами изменения?
2) Как мне просто экспортировать исходное изображение, если никаких изменений не произошло?