【发布时间】:2020-08-04 08:19:54
【问题描述】:
我有一个使用 Java 1.6 和 JSF 1.2 的应用程序。 PDF 文档在此应用程序中打印。问题是在 windows 更新后,internet explorer 11 中不显示打印机窗口。
JRPdfExporter exporter = new JRPdfExporter();
exporter.setParameter(JRPdfExporterParameter.PDF_JAVASCRIPT,
"this.print({bUI: true,bSilent: false,bShrinkToFit: true});");
exporter.setParameter(JRExporterParameter.JASPER_PRINT, print);
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, out);
exporter.exportReport();
如果我将它编程为进行静默打印,而不显示打印机对话框,它可以完美运行。
JRPdfExporter exporter = new JRPdfExporter();
exporter.setParameter(JRPdfExporterParameter.PDF_JAVASCRIPT,
"var pp = this.getPrintParams();pp.interactive =
pp.constants.interactionLevel.silent;this.print(pp);");
exporter.setParameter(JRExporterParameter.JASPER_PRINT, print);
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, out);
exporter.exportReport();
我需要能够显示打印对话框。
经过多次测试,我看到了一个可能的解决方案(尽管它不是一个确定的解决方案)。如果我取消选中启动时启用保护模式的选项,在 adobe acrobat 阅读器菜单中,如果它可以工作,但它在生产环境中不能作为最终解决方案
尝试了各种配置后,发现问题分两步解决。第一步是在 Adobe Reader 中禁用安全模式,第二步是在 Internet Explorer 11 中删除安全模式。有两个更改我不能要求用户进行。有没有办法使用代码做到这一点?
【问题讨论】:
-
您能否告知我们,您使用的是哪个操作系统版本以及在哪个更新之后出现此问题?此代码是否在此更新之前显示打印对话框?浏览器控制台中是否有任何错误或警告消息?请尝试提供此信息可能有助于更好地理解问题。
-
- 操作系统。 Windows 10 PRO 64 位 - 版本:19041.388 - 在上次更新之前,应用程序正常工作。 - Internet Explorer 控制台或应用程序日志中没有错误或预热
-
我不确定您所说的 IE 浏览器的安全模式。通常,当用户使用“-extoff”启动 IE 时,IE 会以安全模式启动。此模式将关闭浏览器基本运行不需要的任何程序插件和一些扩展。 IE UI 中没有针对安全模式的特定选项。如果可能,请提供有关它的详细信息。
标签: javascript internet-explorer jasper-reports adobe-reader