在Firefox中查看带有表单的PDF

时间:2019-05-31 08:24:38

标签: javascript java pdf firefox

我正在开发Web应用程序,因此需要在Firefox中预览PDF。

很显然,我已将PDF嵌入HTML代码中。问题是这些PDF包含表单,而且我知道内置的Firefox查看器无法显示表单。除了表单(包含数字签名)以外,其余文档均可以正确显示,并且在Chrome中一切正常(也可以显示签名)。

我想问问哪一种是在Firefox中支持整个文档视图的最佳方法。我正在使用的当前版本是52.7.3,但是我想为将来的版本提供可扩展的系统。

我当时正在考虑将PDF转换为Base64字符串并进行这样的嵌入,但是在一些在线演示中尝试也不起作用(也许文档很大吗?)。

我想到的另一种可能性是将PDF转换为JPEG(或类似格式)并像这样预览。您如何看待?

是否有任何库可以处理不使用嵌入式查看器的Java / Javascript代码中的PDF文件?我尝试了PDF.js,但我意识到它正在使用内置的查看器。如果我错了,请纠正我。

3 个答案:

答案 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文件。