2011-07-07 16 views

答えて

3

あなたはQWebSettingsてプラグインを有効にして、PDFビューアは、それはAcrobatなどのブラウザプラグインを提供してインストールしている場合、あなたはPDFをごQWebView内のプラグインを使用してレンダリング表示されるはずです。

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はありません - プラグインがロードされていることを証明しています)を使って私のために働いていますが、これは私が前に行った方法です。試してみてください。

+0

私はPDFビューアがインストールされているかどうかを知る方法は?プラグインをインストールする方法は? – lionel319

+0

プラグインがインストールされているかどうかを確認する最も簡単な方法は、デフォルトのブラウザでPDFリンクにアクセスして何が起こるかを確認することです。あなたはWindowsにいますか? Acrobat Readerはhttp://get.adobe.com/reader/からダウンロードでき、QtWebKitは自動的にこれを選択します。 –

+0

また、ChromeにはPDFリーダーが組み込まれているため、サードパーティプラグインがインストールされていない場合でも常にPDFファイルが表示されます。 Chromeのアドレスバーにabout:pluginsと入力すると、内蔵のリーダー以外のPDFリーダーがあるかどうかがわかります。 –

2

WebkitにはPDFビューアは含まれていません。別のビューア(Adobe PDFビューアなど)に渡すかどうか、何らかの方法でコントロールにレンダリングするか(楽しみのためにrendering it in JavaScriptを試すこともできます)、レンダリングの方法が必要です。

0

これはPyQt5のためのゲイリー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_()) 
関連する問題