在HTML中嵌入PDF的推荐方法是什么?
iFrame吗? 对象? 嵌入?
Adobe是怎么说的呢?
在我的例子中,PDF是动态生成的,因此不能在刷新之前将其上传到第三方解决方案。
在HTML中嵌入PDF的推荐方法是什么?
iFrame吗? 对象? 嵌入?
Adobe是怎么说的呢?
在我的例子中,PDF是动态生成的,因此不能在刷新之前将其上传到第三方解决方案。
当前回答
这是我对AXIOS和Vue.js所做的:
axios({
url: `urltoPDFfile.pdf`,
method: 'GET',
headers: headers,
responseType: 'blob'
})
.then((response) => {
this.urlPdf = URL.createObjectURL(response.data)
})
.catch((error) => {
console.log('ERROR ', error)
})
将urlPDF动态添加到HTML:
<object width='100%' height='600px' :data='urlPdf' type='application/pdf'></object>
其他回答
要将文件流式传输到浏览器,请参阅Stack Overflow问题如何使用。net 2.0将PDF文件流式传输为二进制文件到浏览器-请注意,有一些小的变化,无论您是从文件系统提供文件还是动态生成文件,这都可以工作。
尽管如此,所引用的MSDN文章对世界的看法相当简单,因此您可能希望阅读通过HTTPS成功地将PDF传输到浏览器以及您可能需要提供的一些标题。
使用这种方法,iframe可能是最好的方法。有一个流文件的webform,然后将iframe放在另一个页面上,并将其src属性设置为第一个表单。
您可以像这样使用保存的pdf的相对位置:
例二
<embed src="example.pdf" width="1000" height="800" frameborder="0" allowfullscreen>
Example2
<iframe src="example.pdf" style="width:1000px; height:800px;" frameborder="0" allowfullscreen></iframe>
FDView将PDF2SWF(它本身基于xpdf)与SWF查看器结合在一起,这样您就可以在服务器上动态地转换和嵌入PDF文档。
xpdf不是一个完美的PDF转换器。如果你需要更好的结果,那么Ghostview有一些能力将PDF文档转换为其他格式,你可能能够更容易地构建一个Flash查看器。
但是对于简单的PDF文档,FDView应该工作得相当好。
PdfToImageServlet使用ImageMagick的convert命令。
使用的例子: < img src = " / webAppDirectory / PdfToImageServlet ? pdfFile = / usr /共享/杯/数据/ default-testpage.pdf ' >
在我得到嵌入base64编码PDF的问题之前,因为URI限制,所以任何超过2MB的文件都不会在Chrome上正确呈现。
我的解决方案是:
转换uri编码为Blob: 基于Blob生成临时DOM字符串。 const blob = dataURItoBlob(this.dataUrl); var temp_url = window.URL.createObjectURL(blob); 决定你想把iframe附加到DOM的位置: const target = document.querySelector(targetID); 目标。innerHTML =' <iframe src='${temp_url}' type="application/pdf"></iframe> .