我正在使用 Base 64 编码图形将图像添加到 Canvas 背景。我的问题是如何返回编码图形image_png
的宽度和高度,以便我可以将 Canvas 的宽度和高度设置为相同。
import tkinter as tk
image_png = """
R0lGODlhIAAgALMAAAAAAAAAgHCAkC6LV76+vvXeswD/ANzc3DLNMubm+v/6zS9PT6Ai8P8A////
/////yH5BAEAAAkALAAAAAAgACAAAAS00MlJq7046803AF3ofAYYfh8GIEvpoUZcmtOKAO5rLMva
0rYVKqX5IEq3XDAZo1GGiOhw5rtJc09cVGo7orYwYtYo3d4+DBxJWuSCAQ30+vNTGcxnOIARj3eT
YhJDQ3woDGl7foNiKBV7aYeEkHEignKFkk4ciYaImJqbkZ+PjZUjaJOElKanqJyRrJyZgSKkokOs
NYa2q7mcirC5I5FofsK6hcHHgsSgx4a9yzXK0rrV19gRADs=
"""
master=tk.Tk()
master.geometry("100x100")
canvas=tk.Canvas(master)
canvas.grid()
photo=tk.PhotoImage(data=image_png)
canvas.create_image(0, 0, image=photo, anchor="nw")
master.mainloop()
我认为解决方案可能如下所示(举个例子):
height, width = photo.height(), photo.width()
canvas.create_image(height = height, width = width, image=photo, anchor="nw")
最佳答案
使用PhotoImage
的width
、height
方法:
...
photo = tk.PhotoImage(data=image_png)
print(photo.width()) # => 32
print(photo.height()) # => 32
...
关于python - 如何使用 tkinter 返回 Base 64 编码图形的高度和宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27129550/