【发布时间】:2016-06-28 15:15:42
【问题描述】:
我正在使用 Java 1.6.0_45 使用 Apache FOP 2.1 构建一些报告(由于部署环境的限制)。我也尝试过使用 Java 1.8.0_45 无济于事。我正在尝试在文档中嵌入一对链接,一个指向外部帮助门户,第二个是指向联系人电子邮件地址的 mailto。这两个链接都是用似乎是二进制乱码的 URL 值构建的。在十六进制编辑器中检查时,它们不等同于任何有用的东西。我已经简化了我的测试以链接到 google.com 并且仍然收到类似的输出。以下是一些示例:
XSL:FO 输出:
<fo:basic-link external-destination="url('http://www.google.com')" color="blue" text-decoration="underline">TEST</fo:basic-link>
在 Acrobat 中复制链接位置:
file:///C|/dev/projects/customer/project/reporting/˜áþ€-¶
¶@ŒœØ÷“)í6
在 Chrome 中打开的网址:
file:///C:/dev/projects/customer/project/reporting/%98%0B%17%E1%FE%80-%B6%0A%B6@%8C%9C%7F%D8%F7%93%0B)%ED6
XSL:FO 输出
<fo:basic-link external-destination="http://www.google.com" color="blue" text-decoration="underline">TEST</fo:basic-link>
在 Acrobat 中复制链接位置:
file:///C|/dev/projects/customer/project/reporting/Kþ#ÈDÛ;!aוA‚ׄâs`
在 Chrome 中打开的网址:
file:///C:/dev/projects/customer/project/reporting/K%FE#ÈDÛ;!a×%05•A‚ׄâ%13s`
fo:block 元素是 fo:block 元素的子元素,而 fo:block 元素又是 fo:table-cell 元素的子元素。看起来我做错了什么吗?我搜索了这个问题以及 FOP 2.1 的已知问题,但没有发现任何类似问题。
提前致谢。
【问题讨论】:
-
如果行为在早期 fop 版本中的“更好”意义上有所不同,我建议提交错误。
标签: java apache xslt apache-fop