如何在 HTML 页面中嵌入 PDF?

Posted

技术标签:

【中文标题】如何在 HTML 页面中嵌入 PDF?【英文标题】:How to embed a PDF in HTML page? 【发布时间】:2011-07-30 18:16:19 【问题描述】:

我们希望在通过 servlet 的 doGet 方法从数据库中检索到 PDF 文档后,在 html 页面中显示它。

谁能分享一些关于如何实现这一点的sn-ps?

【问题讨论】:

“显示”如何?使用安装在用户系统上的浏览器插件? 您只需要在响应头中返回适当的mimetype即可。 您将需要使用 object、embed 或 iframe 标签对内容进行单独的 http 请求 @mplungjan - 如何检索 iframe 标签中的内容? @symcbean - 作为 http 响应的一部分,我正在为此文档返回适当的 mimetype 【参考方案1】:

Google 文档查看器可以处理这个问题。

试试

<html>
    <head>
        <style>
            *margin:0;padding:0
            html, body height:100%;width:100%;overflow:hidden
        </style>
        <meta charset="utf-8">
            <?php
                 $url = $_GET['url'];
             ?>
        <title><?php echo $url; ?></title>
    </head>
    <body>
        <iframe src="http://docs.google.com/viewer?url=<?=urlencode($url)?>&embedded=true"  style="position: absolute;width:100%; height: 100%;border: none;"></iframe>
    </body>
</html>

【讨论】:

谢谢,这是我找到并工作的唯一方法。【参考方案2】:

如果您正在寻找文档的纯 HTML 版本(用于快速呈现和跨浏览器支持),您可以通过 Docspad。 Docspad 有助于将所有不同的流行文档格式嵌入到您的 Web 应用程序中。 http://docspad.com

【讨论】:

Docspad 已死:“自 2014 年 10 月 19 日起,我们将不再支持 Docspad 服务”【参考方案3】:

需要使用对象、嵌入或 iframe 标记检索除图像之外的非 html 内容

    iframe&lt;iframe src="somepage.pdf"&gt;&lt;/iframe&gt; 对象/嵌入&lt;object src="somepage.pdf"&gt;&lt;embed src="somepage.pdf"&gt;&lt;/embed&gt;&lt;/object&gt;

somepage.pdf 可能是 somepage.jsp?filename=somepage&mimetype=application/pdf

这是一个有趣的链接How to Embed Microsoft Office or PDF Documents in Web Pages

这是*** search

【讨论】:

我需要在子文档中使用父文档中的内联样式元素。 iframe 不允许这样做。这适用于嵌入或对象吗? 不太可能。如果跨域也行不通。如果没有,那么 iframe 应该可以工作。问一个单独的问题 同一个域。但是这个问题已经被问过了,它的答案只提供了使用外部样式表的响应。 那么为什么不能使用 iFrame?您可以在加载时将父样式表复制并插入到 iframe 中 当我尝试这些时,它开始下载 docx 文件,是因为我不在服务器上(离线),还是因为我错过了什么?

以上是关于如何在 HTML 页面中嵌入 PDF?的主要内容,如果未能解决你的问题,请参考以下文章

如何在页面中嵌入 PDF 查看器?

如何在没有 iframe 的页面中嵌入 PDF.JS 查看器

如何像GitHub一样将PDF嵌入网页中

如何在没有javascript的情况下将PDF嵌入网页[重复]

如何使用 html5 和 jquery 在网页中显示 pdf 内容?

如何把EXE嵌入到网页中运行?