問題は、WebKit 内のセキュリティ制限です。
私の知る限り、その背後にあるアイデアは、インターネットからのHTMLページがハードディスク上のファイルをインクルード/参照するのを防ぐことです。何らかの理由で呼び出しもsetHtml()
、HTMLがディスク上のファイルにアクセスすることを許可してはならないとWebKitに思わせます(file://
スキーマを使用) )。
設定されたHTMLが実際にハードディスク自体から来ており、それぞれローカルファイルへのアクセスを許可する必要があることをWebKitに知らせることで、これを回避したと思います。
void QWebView::setHtml ( const QString & html, const QUrl & baseUrl = QUrl() )
ここでテストすることはできませんが、baseUrlにfile://abcd
.
また、PNG のサポートがないことが問題になる可能性があるため、Qt ビルドで PNG のサポートが有効になっているかどうかを確認する必要があります。
Web 上の PNG 画像 (たとえばhttp://files.iconfactory.net/news/CandyBar.png
) を参照してみて、それが表示されるかどうかを確認します。ある場合、PNG はサポートされており、問題は WebKit 内のセキュリティ制限です。