【问题标题】:Use javascript in PDF using flyingsaucer使用飞碟在 PDF 中使用 javascript
【发布时间】:2014-10-15 21:50:26
【问题描述】:

有没有办法在使用飞碟生成的 PDF 中使用 javascript(在打开文档时显示立即打印对话框)?

【问题讨论】:

  • 它要求关闭的对象,这个问题与编程有关。请试着理解这个问题。
  • 由于 Flying Saucer 使用 iText 进行实际渲染,您也许可以使用这个:stackoverflow.com/q/13676541/231316

标签: java javascript pdf itext flying-saucer


【解决方案1】:

请查看link,(第 14 页,共 27 页) 这表明你不能,这是飞碟的限制之一。

飞碟不飞的地方(它不能做什么)

作为有尊严的人,我们必须承认飞碟不能为你做些什么。此列表适用于 编写本文档时的当前版本,R8。

限制:

资源加载是单线程的,并且与布局内联发生。有扩展点 你可以插入后台加载。

对 XHTML 的支持比 XML+CSS 弱(例如,不是所有的 XHTML 表示 属性不受支持,也不支持 X/HTML 特性(如元素)。

不支持旧版或“街头”HTML,尽管有几个开源 Java HTML 提供各种质量的清洁剂。我们呈现格式良好的 XML; XHTML 是一个格式良好的 使用一组特殊标记的 XML 文档。我们不能“在野外”渲染大多数 HTML。在 最好,您可以使用 TagSoup 或 JTidy 或类似库“清理”旧 HTML,并希望获得最好的结果。 但是如果没有大量工作,您将无法将 Flying Saucer 用于真正的 Web 浏览器 零件。但是,请注意,这不是技术限制,只是缺乏时间和资源。 支持 Swing 打印,但质量欠佳。在邮件列表中询问详细信息。

不支持增量布局(仅适用于屏幕媒体)。

它不能用于用户可编辑的内容;输出是只读的。

不支持 HTML 插件,如小程序、Flash 程序等。然而,这些可以 至少可以使用替换的元素内容(例如我们用于 HTML 表单)来解决 用于 Java 小程序。

不支持脚本(例如 JavaScript)。我们忽略脚本标签。 这可能会被添加,至少对于简单的情况(例如 JS 不修改 DOM)通过挂接对 Rhino JS 的调用 实施。

对内容的动态更改需要重新加载文档(快速但明显),即 您无法动态更改 DOM 并实时查看结果。

JavaScript 中使用的大多数 DOM 回调尚未实现(@onLoad@、onClick、onBlur、 等等)。

【讨论】:

    猜你喜欢
    • 2016-06-26
    • 2016-08-31
    • 1970-01-01
    • 2021-03-25
    • 2013-05-05
    • 2011-03-20
    • 2016-05-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多