使用 object/embed/iframe 渲染 PDF 无法正常工作
Rendering PDF using object/embed/iframe is not working properly
我正在尝试使用 object/embed/iframe html 标签显示 PDF 以供预览,但它没有按预期工作。
有人可以指出这里出了什么问题吗?
这是我的代码:
在HTML_PDFPreview.cshtml:
@model byte[]
<div style="width: 875px;">
<object id="previewPdf" data="data:application/pdf;base64,@Convert.ToBase64String(Model)" style="overflow: visible;"/>
</div>
在控制器操作中:
public ActionResult SomeActionMethod()
{
// some logic to get pdfResult object
return View("~/View/_PDFPreview.cshtml", pdfResult.BuildPdf(ControllerContext));
}
注意:我正在使用 Rotativa NuGet 包来生成 PDF。具有适当数据的操作方法 returns 视图。但在浏览器中,它最终会出现黑屏。
测试用例:在将对象标签更改为 iFrame 后,它在 Chrome 中有效,但在 FireFox 中无效。
如果有任何相关建议,我将不胜感激。
提前致谢。
已修复!
"Test Case: On changing object tag to iFrame it works in Chrome but not in FireFox."
我的错。这是由于 FF 浏览器设置直接下载文件而不是预览。更改设置后问题得到解决。
谢谢。
我正在尝试使用 object/embed/iframe html 标签显示 PDF 以供预览,但它没有按预期工作。 有人可以指出这里出了什么问题吗?
这是我的代码:
在HTML_PDFPreview.cshtml:
@model byte[]
<div style="width: 875px;">
<object id="previewPdf" data="data:application/pdf;base64,@Convert.ToBase64String(Model)" style="overflow: visible;"/>
</div>
在控制器操作中:
public ActionResult SomeActionMethod()
{
// some logic to get pdfResult object
return View("~/View/_PDFPreview.cshtml", pdfResult.BuildPdf(ControllerContext));
}
注意:我正在使用 Rotativa NuGet 包来生成 PDF。具有适当数据的操作方法 returns 视图。但在浏览器中,它最终会出现黑屏。
测试用例:在将对象标签更改为 iFrame 后,它在 Chrome 中有效,但在 FireFox 中无效。
如果有任何相关建议,我将不胜感激。
提前致谢。
已修复!
"Test Case: On changing object tag to iFrame it works in Chrome but not in FireFox."
我的错。这是由于 FF 浏览器设置直接下载文件而不是预览。更改设置后问题得到解决。
谢谢。