【发布时间】:2011-09-05 21:56:25
【问题描述】:
我有存储在结构化 XML 中的数据,我希望使用 XSLT(或其他替代方法)使其更具可读性。目标文档应该有很多在同一行中左右对齐的文本实例,我需要像 div 浮动这样的行为:
<div style="float: left;">
<p align=left>
Left text. Left text. Left text. Left text. Left text. Left text.
</p>
</div>
<div style="float: right;">
<p align=right>
Right text. Right text. Right text. Right text. Right text. Right text.
</p>
</div>
<div style="clear: both;" />
这样,当两者的文本长度大于容器宽度时,写入“Left text” DIV,然后写入“Right text” DIV BELOW。
我不能使用 XSLT 来制作 HTML 文件,因为它将在打印中使用,而且我还需要一种在分页符处具有“保持在一起”功能的语言(如果在中间发生分页符)元素,它应该在元素之前中断)。拥有支持自动调整其列大小的表格(如 HTML 表格)将是一个巨大的优势,但不是必需的。
我正在研究 XSL-FO,但我找不到支持这些功能的免费渲染器。我考虑过使用 XSL 制作 WordML 文件,但我没有找到任何关于它的教程。拥有一个 Word(或 Open Office)文档会很棒,因为我可以进行细微的调整。另外,我正在考虑使用 LaTex。
你能给我什么建议?
编辑:我正在检查一些我不知道的 CSS 功能(多年来没有弄乱它),它确实有一些与打印相关的功能(page-break-inside:避免,@page 等)除了对浮动和表格的自动布局有出色的支持。尽管打印功能没有得到广泛支持,但 Opera 和 IE 确实支持它,我在 IE9 中进行了一些测试,它的渲染效果非常好。因此,我将尝试使用 HTML/CSS 的 XSLT,因为它拥有我需要的一切,并且学习曲线更顺畅(我已经了解了一些 CSS,并且已经使用 HTML 多年)。
【问题讨论】:
-
您真正需要什么建议?无法正确收集您的想法。简述。
-
由于我是 XML 转换的初学者,我需要一个语言建议(免费),它允许我需要的这 2 个功能(浮动和分页符)。 XSL-FO 似乎不足(至少对于 FOP 和 XEP Free)。我不知道 Latex 是否允许我这样做。我知道我可以在 Word 文档中做到这一点(也可能在 OO Writer 中),因此 XML 到 Word(或 Writer)是一种选择,但我找不到任何好的参考或教程。基本上我需要帮助选择一种语言来学习。
-
你的意思是要将XML文件的内容渲染成表格?
-
我想以演示格式呈现 XML,例如 HTML、XSL-FO、WordML 等。
-
我知道!!!。我想知道,如果您正在渲染 XML,它会是
HTML table吗?对了,你知道php吗?
标签: xslt html latex xsl-fo wordml