4

我正在使用 QTextBrowser 来显示与应用程序位于同一目录中的外部 html 文档(及其图像资源)。一切正常,只是图像显示不正确。而不是实际的图片有一个“丢失的图像”图标。

使用 Ubuntu 12.04 我没有这个问题,但在 Windows 7 中它不能按预期工作(我之前描述过)。

我尝试了不同的图像格式和 Qt 版本,但没有成功。

如果我输入图像的绝对文件路径,它会显示得很好。但这不是我想做的,因为那时我不能分享我的应用程序。

这是将 html 文件加载到文本浏览器中的部分:

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>

有人知道为什么它不显示图像吗?

提前致谢,

彼得

4

1 回答 1

-1

我会说图像路径完全不正确,因为它当前是相对的,但是您必须将 HTML 文件作为绝对地址。

要进行测试,请尝试在图像 src 上使用绝对 URL 以查看它是否有效。您可以尝试使用互联网上的一个,然后在本地文件系统上尝试一个。

如果它们都使用绝对 URL,那么您只需要考虑在 HTML 文档中获取正确的文件路径。

我希望这可以帮助您调试问题。抱歉,我没有准确的答案,我也是 QT 的新手。

于 2014-10-19T06:28:20.207 回答