如何将小部件画布(纹理)转换为.png而不保存它?

问题描述 投票:0回答:1

我希望能够这样做:

#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 save or attach to email

目前我将my_widget.texture设为None,将my_widget.canvas设为canvas对象。

我希望按原样提取窗口小部件并将其转换为.png以附加到电子邮件或编辑。

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

此代码将drawing_zone外观保存到存储。我无法在两个步骤之间编辑它。

python opengl kivy
1个回答
0
投票

如果您只是打开并阅读PNG文件,您将获得您可以根据自己的喜好操作的字节。

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

print(canvas_data)

你应该看到你需要存储在这个变量中的'二进制'。

© www.soinside.com 2019 - 2024. All rights reserved.