gpt4 book ai didi

python - QWebEngineView 使用 setHtml(...) 加载 SVG 失败

转载 作者:太空宇宙 更新时间:2023-11-04 03:06:53 28 4
gpt4 key购买 nike

我尝试了两种不同的方式在 PyQt 中加载和显示 SVG 文件:

import sys
from PyQt5.QtWebEngineWidgets import QWebEngineView
from PyQt5.QtWidgets import QApplication
from PyQt5.QtCore import QUrl

app = QApplication(sys.argv)
webView = QWebEngineView()

# Variant 1: Reasonably fast
webView.load(QUrl('file:///Test.svg'))

# Variant 2: Slow for small files, not working for big ones
webView.setHtml('<svg>........')

webView.show()
sys.exit(app.exec_())

第一种方法没问题,但需要一个文件作为输入。不过我想动态生成 SVG,所以这不是一个真正的选择。有谁知道为什么第二种方法对于更复杂的矢量图像如此缓慢或完全失败?

最佳答案

setHtml 函数无法加载任何大于 2MB 的内容(不仅仅是 svg)。这是因为 Chromium 使用 data: 方案 url 来加载内容(这显然将大小限制为 url 的最大长度)。因此,似乎唯一的选择是从本地文件加载 svg。

关于python - QWebEngineView 使用 setHtml(...) 加载 SVG 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39184615/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com