我正在尝试将HTML中嵌套的项目符号列表转换为XML-FO,以便在Apache FOP中将输出转换为PDF。 HTML看起来像这样
<ul>
<li>Item Number1</li>
<ul>
<li>Sub-Item 1</li>
<li>Sub-Item 2</li>
</ul>
</ul>
我尝试过的所有XSLT都为子项创建了一个嵌入式。然而,FOP抱怨你不能将列表块作为列表块的子节点。这是FOP的问题吗?或者,这是不是有效的XML-FO,并且所有XSLT示例都不正确地处理此构造?
如果它是后者,那么生成一组嵌套子弹的正确XML-FO是什么,就像你在HTML中看到的一样?
非常感谢任何帮助!
谢谢!
答案 0 :(得分:2)
FOP是抱怨的权利,规范规定列表块不能作为孩子有列表块。
您需要为嵌套列表创建一个ghost列表项,不要在项目上放置标签(从而使其成为鬼项),并将嵌套列表放入ghost项的正文中。
我的XSL-FO书籍第139页有一个有用的图表,可以http://www.CraneSoftwrights.com/training/#pfux在“试用和购买”的基础上免费下载......如果你决定不支付这本书,请删除您免费下载的副本。