我的QWebkit中有一个链接,指向一个pdf文件。 但是当点击链接时,它不能显示pdf文件。 有没有办法让它成为现实?
答案 0 :(得分:3)
如果您通过QWebSettings启用插件并安装了一个提供浏览器插件(如Acrobat)的PDF查看器,那么您应该会看到使用QWebView中的插件呈现的PDF:
import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtWebKit import *
app = QApplication(sys.argv)
web = QWebView()
web.settings().setAttribute(QWebSettings.PluginsEnabled, True)
web.show()
web.load(QUrl('file:///C:/test/test.pdf')) # Change path to actual file.
sys.exit(app.exec_())
此代码在Windows上不适用于最新版本的Acrobat X(它只显示一个进度条但没有PDF - 证明插件正在加载,只是不起作用)但我确定这是怎么回事我以前做过。试一试,让我知道。
答案 1 :(得分:2)
Webkit不包含PDF查看器。您需要有一些渲染方式 - 无论是将其传递给不同的查看器(Adobe PDF查看器还是其他东西),以您设计的某种方式在控件中呈现它(您甚至可以尝试rendering it in JavaScript为了好玩)。
答案 2 :(得分:0)
这是PyQt5的Gary Hudges代码:
import sys
from PyQt5.QtWidgets import *
from PyQt5.QtWebKitWidgets import *
from PyQt5.QtWebKit import *
from PyQt5.QtCore import *
app = QApplication(sys.argv)
web = QWebView()
web.settings().setAttribute(QWebSettings.PluginsEnabled, True)
web.show()
web.load(QUrl('file:///C:/data/progetti_miei/python/test.pdf')) # Change path to actual file.
sys.exit(app.exec_())