我使用QTextBrowser来显示外部html文档(及其图像资源),该文档与应用程序位于同一目录中。一切正常,因为图像显示不正确。而不是实际的图片有一个“缺少图像”图标。
使用Ubuntu 12.04我没有遇到此问题,但在Windows 7中它没有按预期工作(我之前描述过)。
我尝试了不同的图像格式和Qt版本,但没有成功。
如果我输入图像的绝对文件路径,则显示正常。但那不是我想做的事情,因为我无法分享我的应用程序。
这是将html文件加载到textbrowser中的部分:
QFile file(QApplication::applicationDirPath().append("/test.html"));
if(!file.open(QIODevice::ReadWrite|QIODevice::Text))
return;
QTextStream in(&file);
ui->textBrowser->setHtml(in.readAll());
file.close();
这是我的html文档:
<!doctype html>
<html>
<img src="test.png">
<p>paragraph which contains some text</p>
</html>
有人知道它为什么不显示图像吗?
提前致谢,
彼得
答案 0 :(得分:0)
我会说图像路径是不正确的,因为它当前是相对的,但你必须将HTML文件作为绝对地址。
要进行测试,请尝试在图片src上使用绝对网址,看看它是否有效。您可以尝试使用互联网上的一个,然后在本地文件系统上尝试一个。
如果它们都使用绝对URL,那么您只需要查看在HTML文档中获取正确的文件路径。
我希望这可以帮助您调试问题。对不起,我没有准确的答案,我也是QT的新手。