gpt4 book ai didi

javascript - XSL FO 文件中的 javascript 可以写入文档以使用 Apache FOP 进行处理吗?

转载 作者:行者123 更新时间:2023-11-30 06:29:59 25 4
gpt4 key购买 nike

我试图测试使用 JavaScript 脚本在 PDF 渲染器(特别是 Apache FOP)处理时将内容添加到模板。我知道 XSL 可以调用一个 javascript 文件,该文件又可以调用

document.write("<p>some text</p>");

可以在网络浏览器中轻松显示。您的 javascript 函数是否有可能向文档写入更像的内容

document.write("<fo:block>some text</fo:block>");

这样 Apache FOP 就能够在输出 PDF 中处理和显示该 block ?

最佳答案

document.write 是浏览器在text/html 文档中公开的document 对象编写脚本的方法。 XSLT 无法访问该文档对象及其方法,即使是在浏览器中完成的客户端 XSLT 也是如此。唯一的选择是让 XSLT 生成一个 HTML 结果文档,然后使用脚本来 document.write 一些东西。甚至这也受到限制,例如 Mozilla 浏览器不支持 XSLT 转换的结果文档中的 document.write,请参阅 https://developer.mozilla.org/en/docs/XSL_Transformations_in_Mozilla_FAQ#What_about_document.write.3F .

至于使用 Apache FOP 的 Javascript,不,我认为没有任何可用的文档对象。而且我不确定为什么您需要脚本来创建 fo:block 元素,使用 XSLT 就足以使用文字结果元素,例如

<xsl:template match="foo">
<fo:block>some text</fo:block>
</xsl:template>

关于javascript - XSL FO 文件中的 javascript 可以写入文档以使用 Apache FOP 进行处理吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18256690/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com