我正在开发Web应用程序,因此需要在Firefox中预览PDF。
很显然,我已将PDF嵌入HTML代码中。问题是这些PDF包含表单,而且我知道内置的Firefox查看器无法显示表单。除了表单(包含数字签名)以外,其余文档均可以正确显示,并且在Chrome中一切正常(也可以显示签名)。
我想问问哪一种是在Firefox中支持整个文档视图的最佳方法。我正在使用的当前版本是52.7.3,但是我想为将来的版本提供可扩展的系统。
我当时正在考虑将PDF转换为Base64字符串并进行这样的嵌入,但是在一些在线演示中尝试也不起作用(也许文档很大吗?)。
我想到的另一种可能性是将PDF转换为JPEG(或类似格式)并像这样预览。您如何看待?
是否有任何库可以处理不使用嵌入式查看器的Java / Javascript代码中的PDF文件?我尝试了PDF.js,但我意识到它正在使用内置的查看器。如果我错了,请纠正我。
答案 0 :(得分:1)
是否必须专门使用Firefox打开文件?如果没有,则可以使用Desktop.open(File)使用默认的PDF文件应用程序打开文件。 (https://docs.oracle.com/javase/7/docs/api/java/awt/Desktop.html)
答案 1 :(得分:1)
您可以执行称为“展平”的操作。这涉及获取表单域外观(图形)并将其直接移到页面中,然后删除表单域本身。也经常在注释上完成。
这可以确保每个PDF阅读器都可以看到(渲染)该字段,而且还可以确保用户无法编辑该字段(因为该字段已删除)。
这当然会使所有电子签名失效,因为您正在修改PDF,但是如果保留原始PDF,那应该不是问题。
一旦字段被展平,那么Firefox / Pdf.js将会显示一切正常。
答案 2 :(得分:0)
Desktop.open(File)
如果不必使用Firefox打开PDF文件,则可以使用它来打开PDF文件。