я попробовал два различных способа загрузки и показать файл SVG в PyQt:QWebEngineView терпит неудачу загрузки SVG с помощью setHtml (...)
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 динамически, хотя, так что это не вариант. У кого-нибудь есть идея, почему второй подход настолько медленен или полностью не подходит для более сложных векторных изображений?
Почему вы не используете [QSvgWidget] (http://doc.qt.io/qt-5/qsvgwidget.html)? – ekhumoro
Потому что я использую Javascript для некоторой интерактивности SVG. – sonovice