多次使用相同主题的xslfo中的ToC问题

时间:2014-01-09 10:39:11

标签: xsl-fo dita tableofcontents dita-ot

新年快乐!

我的dita地图由包含主题的子地图组成。如果主题出现在多个dita子映射中,则在ToC中有一个页码和链接,指的是主题第一次出现在文档中。

这是因为主题的ID。 Wen在toc中创建页码(和链接),获取ID。该主题发生两次,但我理解具有相同的ID。因此,在创建链接时,它会与第一次出现链接。

我将非常感谢你的帮助。

1 个答案:

答案 0 :(得分:1)

您使用的是什么版本的Open Toolkit?这种行为肯定是一个错误,因为一旦PDF处理创建了地图的“合并”版本和主题,主题的重复副本应该被赋予唯一ID - 在PDF生成过程中有相当多的代码来管理为主题分配唯一ID(我知道因为我刚刚在我正在进行的定制中打破了一些)。

1.8版本是最新的稳定版本,版本1.6.3是我认为最好的版本(旧版本将有1.6.3修复的错误或缺乏对DITA 1.2功能的良好支持)。 / p>

请注意,如果您从同一个地图生成HTML,您会注意到类似的行为,即生成的HTML ToC中对主题的所有引用都将指向单个文件 - 这是预期的HTML行为但是有意义因为每个主题都会生成一个单独的HTML文件。

但是,您可以对主题的不同主题引用使用@copy-to属性,为每个引用提供主题唯一有效的文件名(就像您已创建主题的文本副本然后引用这些副本一样)。这绝对可以解决你的问题,但如果你想要的只是你期望从PDF中获得的行为,那么这应该是必要的。

干杯,

埃利奥特