xslfo中多次出现具有相同主题的ToC问题



新年快乐!

我的dita映射由包含主题的子映射组成。如果一个主题出现在多个dita子映射中,那么在ToC中会有一个页码和链接,指向文档中第一次出现该主题的时间。

这是因为主题的ID。Wen在toc中创建页码(和链接),它会得到ID。主题出现两次,但正如我所理解的,使用相同的ID。因此,当创建链接时,它会与第一次出现的内容链接。

我将非常感谢你的帮助。

您使用的是什么版本的Open Toolkit?这种行为无疑是一个错误,因为一旦PDF处理创建了地图和主题的"合并"版本,主题的重复副本就应该被赋予唯一的ID——在PDF生成过程中,有很多代码可以管理主题的唯一ID分配(我知道,因为我刚刚在目前正在进行的自定义中破坏了其中的一些)。

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

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

但是,您可以在主题的不同主题引用上使用@copy属性,为每个引用为主题提供唯一有效的文件名(就好像您创建了主题的文本副本,然后引用了这些副本一样)。这肯定会解决你的问题,但如果你只想从PDF中得到你所期望的行为,那就没有必要了,这应该是有效的。

干杯,

艾略特

最新更新