Как конвертировать виджет canvas (texture) в .png без его сохранения? - PullRequest
0 голосов
/ 17 апреля 2019

Я хочу иметь возможность сделать это:

#Reference widget
my_widget = self.ids.my_widget_kv
#Extract texture or graphics
drawing = my_widget.texture (or something that works)

#TODO convert to drawing .png in binary

#TODO edit in PIL

TODO сохранить или прикрепить к электронной почте

В данный момент я получаю my_widget.texture как None, а my_widget.canvas как canvasobject.

Я хочу извлечь виджеты, как они есть, и преобразовать их в .png, чтобы прикрепить к электронному письму или отредактировать.

timestr = time.strftime("%Y%m%d_%H%M%S")
self.ids.export_to_png("IMG_{}.png".format(timestr))

Этот код сохраняет внешний вид Drawing_zone в хранилище.Я не могу редактировать его между шагами.

1 Ответ

0 голосов
/ 17 апреля 2019

Если вы просто откроете и прочитаете PNG-файл, вы получите байты, которыми сможете манипулировать по своему вкусу.

canvas_png = open("IMG.png","r+b").read()
canvas_data = (canvas_png.getvalue())

print(canvas_data)

Вы должны увидеть нужный вам двоичный файл, сохраненный в этой переменной.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...