我使用 docbook 作为 HTML 和 PDF 输出的来源。在 docbook 源代码中,我有一系列相对的链接(指向 javadoc 文件),这对于 HTML 输出来说很好,因为 javadoc 文件与原始文档一起部署。对于 PDF 输出,我想通过添加 URL 前缀将它们转换为绝对链接。这可能吗?我为这些链接添加了一个“相对”角色,并尝试添加一个自定义层:
<xsl:template match="d:link[@role='relative']">
<xsl:copy>
<xsl:attribute name="xlink:href">
<xsl:value-of select="concat('http://prefix/', @xlink:href)"/>
</xsl:attribute>
</xsl:copy>
<xsl:apply-templates select="d:link"/>
</xsl:template>
这似乎起到了一半的作用,因为它确实将前缀添加到链接 href,但它不会将链接元素转换为 FO。
有什么想法或其他方法可以做到吗?