tksvg 库是否能够直接从代码而不是从文件中读取 svg?如果是这样,怎么做?
在 PyQt5 中找到了一个示例,在 tksvg 或 tkinter 中是否有类似的东西?
def iconFromBase64(base_64):
pixmap = QtGui.QPixmap()
pixmap.loadFromData(QtCore.QByteArray.fromBase64(base_64), "SVG")
icon = QtGui.QIcon(pixmap)
return icon
...
self.svg_str = """
<svg width="210pt" height="210pt" viewBox="0 0 210 210">....</svg>
"""
svg_base64_str = b64encode(self.svg_str.encode('utf-8'))
self.icon = iconFromBase64(svg_base64_str)
self.pb.setIcon(self.icon)
...
它
PhotoImage()有一个参数data,通过该参数传递数据以创建图像。对于二进制格式,这是文件的 base64 编码内容。而对于 SVG,这是文件本身的内容(因为它已经是文本)。当然,如果你愿意,你可以存储在 base64 中。