如何在HTML中显示pdf文件

viv*_*vek 130 html pdf

我有一个由itext自动生成的PDF文件,我需要以HTML格式显示该PDF文件.我的问题是:如何使用pdf.js以HTML格式显示本地PDF文件?这个PDF文件应该由某些标准生成吗?

Gof*_*ord 195

在HTML网页中实现PDF文件非常简单.

<embed src="file_name.pdf" width="800px" height="2100px" />
Run Code Online (Sandbox Code Playgroud)

确保根据需要更改宽度和高度.祝好运!

  • +1是一个简单而可行的解决方案.欢呼 (7认同)
  • 它显示 Chrome 浏览器上的移动设备不支持该插件。 (5认同)
  • `<iframe src ="file_name.pdf"style ="width:100%; height:100%; border:none;"></iframe> </ iframe>` (4认同)
  • 它正在下载文件而不是显示该文件 (4认同)
  • 最佳方法在http://jsgyan.blogspot.in/2017/12/how-to-display-pdf-in-html-web-page.html中进行了描述 (2认同)
  • 2021 年,CanIUse 在桌面和移动设备上显示出[强大的支持](https://www.caniuse.com/?search=embed)。 (2认同)

小智 39

我使用Google Docs嵌入式PDF查看器.这些文档不必上传到Google文档,但必须在线提供.

<iframe src="https://docs.google.com/gview?url=https://path.com/to/your/pdf.pdf&embedded=true" style="width:600px; height:500px;" frameborder="0"></iframe>
Run Code Online (Sandbox Code Playgroud)

  • 这是链接:[可嵌入的 Google 文档](http://googlesystem.blogspot.com/2009/09/embeddable-google-document-viewer.html) (2认同)
  • 如果您想在谷歌驱动器中嵌入 pdf 文件,只需进一步评论。点击进入pdf后,找到“嵌入项目”它将生成iframe HTML。 (2认同)
  • 这里有人可以参考一下它支持哪种浏览器吗? (2认同)

Ukr*_*Ukr 35

1. 浏览器原生 HTML 内嵌嵌入:

<embed
    src="http://infolab.stanford.edu/pub/papers/google.pdf#toolbar=0&navpanes=0&scrollbar=0"
    type="application/pdf"
    frameBorder="0"
    scrolling="auto"
    height="100%"
    width="100%"
></embed>
Run Code Online (Sandbox Code Playgroud)
<iframe
    src="http://infolab.stanford.edu/pub/papers/google.pdf#toolbar=0&navpanes=0&scrollbar=0"
    frameBorder="0"
    scrolling="auto"
    height="100%"
    width="100%"
></iframe>
Run Code Online (Sandbox Code Playgroud)

亲:

  • 没有 PDF 文件大小限制(甚至数百 MB)
  • 这是最快的解决方案

缺点:

  • 它不适用于移动浏览器

2. 谷歌文档查看器:

<iframe
    src="https://drive.google.com/viewerng/viewer?embedded=true&url=http://infolab.stanford.edu/pub/papers/google.pdf#toolbar=0&scrollbar=0"
    frameBorder="0"
    scrolling="auto"
    height="100%"
    width="100%"
></iframe>
Run Code Online (Sandbox Code Playgroud)

亲:

  • 适用于桌面和移动浏览器

缺点:

  • 25MB 文件限制
  • 需要额外的时间来下载查看器

3. 嵌入PDF的其他解决方案:


重要的提示:

请检查 X-Frame-Options HTTP 响应标头。它应该是 SAMEORIGIN。

X-Frame-Options SAMEORIGIN;
Run Code Online (Sandbox Code Playgroud)


小智 23

如果你想使用pdf.js,我建议你阅读这个

您也可以在某处上传您的pdf(例如Google云端硬盘),并在iframe中使用其网址

要么

<object data="data/test.pdf" type="application/pdf" width="300" height="200">
<a href="data/test.pdf">test.pdf</a>
</object>
Run Code Online (Sandbox Code Playgroud)


小智 12

你可以在这样的html页面中轻松显示

<embed src="path_of_your_pdf/your_pdf_file.pdf" type="application/pdf"   height="700px" width="500">
Run Code Online (Sandbox Code Playgroud)


pra*_*kor 9

在pc的html页面很容易实现

<embed src="study/sample.pdf" type="application/pdf"   height="300px" width="100%">
Run Code Online (Sandbox Code Playgroud)

但是这个代码在移动设备上显示pdf是不可能的,你必须要一个插件

如果您没有响应您的网站.然后上面的代码pdf没有在手机中显示,但你可以在代码后面放下载选项

<embed src="study/sample.pdf" type="application/pdf"   height="300px" width="100%" class="responsive">
<a href="study/sample.pdf">download</a>
Run Code Online (Sandbox Code Playgroud)


Yas*_*ash 9

便携式文档格式 ( PDF )。

  • 任何浏览器«使用_Embeddable Google 文档查看器将 PDF 文件嵌入到iframe.

    <iframe src="http://docs.google.com/gview?
        url=http://infolab.stanford.edu/pub/papers/google.pdf&embedded=true"
        style="width:600px; height:500px;" frameborder="0">
    </iframe>
    
    Run Code Online (Sandbox Code Playgroud)
  • 仅适用于使用插件的 chrome 浏览器 « Chrome PDF 查看器。pluginspage=http://www.adobe.com/products/acrobat/readstep2.html.

    <embed type="application/pdf" 
    src="http://www.oracle.com/events/global/en/java-outreach/resources/java-a-beginners-guide-1720064.pdf" 
    width="100%" height="500" alt="pdf" pluginspage="http://www.adobe.com/products/acrobat/readstep2.html" 
    background-color="0xFF525659" top-toolbar-height="56" full-frame="" internalinstanceid="21" 
    title="CHROME">
    
    Run Code Online (Sandbox Code Playgroud)

示例 Sippet:

<html>
   <head></head>
   <body style=" height: 100%;">
      <div style=" position: relative;">
      <div style="width: 100%; /*overflow: auto;*/ position: relative;height: auto; margin-top: 70px;">
         <p>An 
            <a href="https://en.wikipedia.org/wiki/Image_file_formats" >image</a> is an artifact that depicts visual perception
         </p>
         <!-- To make div with scroll data [max-height: 500;]-->
         <div style="/* overflow: scroll; */ max-height: 500; float: left; width: 49%; height: 100%; ">
            <img width="" height="400" src="https://peach.blender.org/wp-content/uploads/poster_bunny_bunnysize.jpg?x11217" title="Google" style="-webkit-user-select: none;background-position: 0px 0px, 10px 10px;background-size: 20px 20px;background-image:linear-gradient(45deg, #eee 25%, transparent 25%, transparent 75%, #eee 75%, #eee 100%),linear-gradient(45deg, #eee 25%, white 25%, white 75%, #eee 75%, #eee 100%);cursor: zoom-in;" />
            <p>Streaming an Image form Response Stream (binary data) «  This buffers the output in smaller chunks of data rather than sending the entire image as a single block. 
               <a href="http://www.chestysoft.com/imagefile/streaming.asp" >StreamToBrowser</a>
            </p>
         </div>
         <div style="float: left; width: 10%; background-color: red;"></div>
         <div style="float: left;width: 49%; ">
            <img width="" height="400" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" alt="Red dot"/>
            <p>Streaming an Image form Base64 String « embedding images directly into your HTML.
               <a href="https://en.wikipedia.org/wiki/Data_URI_scheme">
               <sup>Data URI scheme</sup>
               </a>
               <a href="https://codebeautify.org/image-to-base64-converter">
               <sup>, Convert Your Image to Base64</sup>
               </a>
            <pre>data:[&lt;media type&gt;][;base64],&lt;data&gt;</pre>
            </p>
         </div>
      </div>
      <div style="width: 100%;overflow: auto;position: relative;height: auto; margin-top: 70px;">
      <video style="height: 500px;width: 100%;" name="media" controls="controls">
         <!-- autoplay -->
         <source src="http://download.blender.org/peach/trailer/trailer_400p.ogg" type="video/mp4">
         <source src="http://download.blender.org/peach/trailer/trailer_400p.ogg" type="video/ogg">
      </video>
      <p>Video courtesy of 
         <a href="https://www.bigbuckbunny.org/" >Big Buck Bunny</a>.
      </p>
      <div>
         <div style="width: 100%;overflow: auto;position: relative;height: auto; margin-top: 70px;">
            <p>Portable Document Format 
               <a href="https://acrobat.adobe.com/us/en/acrobat/about-adobe-pdf.html?promoid=CW7625ZK&mv=other" >(PDF)</a>.
            </p>
            <div style="float: left;width: 49%; overflow: auto;position: relative;height: auto;">
               <embed type="application/pdf" src="http://www.oracle.com/events/global/en/java-outreach/resources/java-a-beginners-guide-1720064.pdf" width="100%" height="500" alt="pdf" pluginspage="http://www.adobe.com/products/acrobat/readstep2.html" background-color="0xFF525659" top-toolbar-height="56" full-frame="" internalinstanceid="21" title="CHROME">
               <p>Chrome PDF viewer 
                  <a href="https://productforums.google.com/forum/#!topic/chrome/MP_1qzVgemo">
                  <sup>extension</sup>
                  </a>
                  <a href="https://chrome.google.com/webstore/detail/surfingkeys/gfbliohnnapiefjpjlpjnehglfpaknnc">
                  <sup> (surfingkeys)</sup>
                  </a>
               </p>
            </div>
            <div style="float: left; width: 10%; background-color: red;"></div>
            <div style="float: left;width: 49%; ">
               <iframe src="https://docs.google.com/gview?url=http://infolab.stanford.edu/pub/papers/google.pdf&embedded=true#:page.7" style="" width="100%" height="500px" allowfullscreen="" webkitallowfullscreen=""></iframe>
               <p>Embeddable 
                  <a href="https://googlesystem.blogspot.in/2009/09/embeddable-google-document-viewer.html" >Google</a> Document Viewer. Here's the code I used to embed the PDF file: 
<pre>
&lt;iframe 
src="http://docs.google.com/gview?
url=http://infolab.stanford.edu/pub/papers/google.pdf&embedded=true" 
style="width:600px; height:500px;" frameborder="0"&gt;&lt;/iframe&gt;
</pre>
               </p>
            </div>
         </div>
      </div>
   </body>
</html>
Run Code Online (Sandbox Code Playgroud)


Roh*_*ali 7

最简单的方法是使用,

<iframe src="pdf-link">
</iframe>
Run Code Online (Sandbox Code Playgroud)

如果仍然下载而不是查看它,请检查服务器响应标头,它应该有,Content-Disposition:Inline而不是Content-Disposition:Attachment


Suf*_*ari 7

所有浏览器都支持该元素,并在 HTML 文档中定义嵌入对象。

底线:OBJECT 是好的,EMBED 是旧的。除了 IE 的 PARAM 标签之外,如果浏览器不支持 OBJECT 的引用插件,则 OBJECT 标签之间的任何内容都将被呈现,显然,无论是否呈现,内容都会被 http 请求。参考

工作代码:https : //www.w3schools.com/code/tryit.asp?filename=G7L8BK6XC0A6

<!DOCTYPE html>
<html>
<body>

<object width="400px" height="400px" data="https://s3.amazonaws.com/dq-blog-files/pandas-cheat-sheet.pdf"></object>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)


Mor*_*ori 6

这个方法也很有用:

在桌面移动浏览器上显示 pdf 文件:

<object data="./filename.pdf" type="application/pdf" width="500px" height="600px">
  <p>Your web browser doesn't have a PDF plugin.
   <a href="./filename.pdf">click here to download the PDF file.</a></p>
</object>
Run Code Online (Sandbox Code Playgroud)


Dir*_*olf 5

我以前有过类似的东西并且通常使用标签

<a href="path_of_your_pdf/your_pdf_file.pdf" tabindex="-1"><strong>click here</strong></a>
Run Code Online (Sandbox Code Playgroud)

但像上面一样找出其他一些方法很有趣!