我有一个自动生成的PDF文件,我需要在HTML中显示该PDF文件。我的问题是:如何在HTML中使用PDF .js显示本地PDF文件?PDF文件是否应该按照某些标准生成?
当前回答
你可以使用
<iframe src="your_pdf_file_path" height="100%" width="100%" scrolling="auto"></iframe>
或者,如果你想让它占据整页:
<a href="your_pdf_file_path">Link</a>
其他回答
元素受到所有浏览器的支持,并在HTML文档中定义了一个嵌入对象。
底线:OBJECT是好的,EMBED是旧的。除了IE的PARAM标签之外,如果浏览器不支持OBJECT的引用插件,OBJECT标签之间的任何内容都会被渲染,而且显然,无论内容是否被渲染,它都会被http请求。参考
工作代码:https://www.w3schools.com/code/tryit.asp?filename=G7L8BK6XC0A6
<!DOCTYPE html > < html > 身体< > <object width="400px" height="400px" data="https://s3.amazonaws.com/dq-blog-files/pandas-cheat-sheet.pdf"></object> 身体< / > < / html >
如果你想使用pdf.js,我建议你阅读这个
你也可以把你的pdf文件上传到某个地方(比如谷歌Drive),并在iframe中使用它的URL
or
<object data="data/test.pdf" type="application/pdf" width="300" height="200">
<a href="data/test.pdf">test.pdf</a>
</object>
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>
<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>
Pro:
没有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>
Pro:
适用于桌面和移动浏览器
缺点:
25MB文件限制 需要额外的时间下载查看器
3.嵌入PDF的其他解决方案:
https://mozilla.github.io/pdf.js https://pdfobject.com https://viewerjs.org
重要提示:
请检查X-Frame-Options HTTP响应报头。它应该是SAMEORIGIN。
X-Frame-Options SAMEORIGIN;
最简单的方法是,
<iframe src="pdf-link">
</iframe>
如果它仍然下载而不是查看,检查服务器响应头,它应该有,Content-Disposition:内联,而不是,Content-Disposition:附件。
在HTML网页中实现PDF文件非常简单。
<embed src="file_name.pdf" width="800px" height="2100px" />
确保根据你的需要改变宽度和高度。