【发布时间】:2018-03-24 18:55:52
【问题描述】:
我必须修改文件的 xsl 才能制作 pdf。我们曾经使用 AntennaHouse,但有人决定我们现在应该使用 RenderX。所以我需要找到一个等价于
<fo:block axf:outline-level="{$bookmark-level}" axf:outline-expand="false" axf:outline-title="{$bookmark-title}">
</fo:block>
我尝试将 axf 更改为 rx,它可以编译,但 pdf 上没有显示书签。
我也尝试过使用
<rx:outline>
<rx:bookmark internal-destination="">
<rx:bookmark-label>
section
</rx:bookmark-label>
</rx:bookmark>
</rx:outline>
但是这个解决方案也不起作用。
理想情况下,我想偶尔在 xsl 中制作书签(因为它是当前在 xsl 文件中制作的方式)。换句话说,我不想在 xsl 文件的开头做这一切。
有人有灵魂吗?
编辑:
我将代码稍微更改为
<fo:block id="section1">Section 1</fo:block>
<rx:outline>
<rx:bookmark internal-destination="section1">
<rx:bookmark-label>
section
</rx:bookmark-label>
</rx:bookmark>
</rx:outline>
【问题讨论】:
-
您的书签无处可去,因为没有目的地 (internal-destination="")
-
@KevinBrown 即使使用内部目的地,它也不能解决我的问题,也不能在我的 pdf 上显示书签。
-
您可能没有 rx: 命名空间。您必须在您的 XSL 中添加此名称空间。请看下面的答案。我将添加命名空间
标签: xml pdf xslt xsl-fo renderx