我现在正在开发一个xslfo样式表,它使用RenderX XEP处理器将内容设置为2列显示。但是,我仍然希望将这些表格作为1列显示,因为它们更宽。我发现这篇文章非常有帮助:使用XEP处理器在多列xslfo中设置span属性?
http://www.sagehill.net/docbookxsl/MultiColumns.html(向下导航“页面列跨越“部分)
事实上,自从我使用XEP处理器,它不会让我把一个@跨度=‘所有’属性在包含我的表格元素的外部fo:block中,因为那个fo:block不是fo:flow的直接子元素。所以,在这篇文章中使用了建议的解决方案,我将包含的fo:block更改为fo:wrapper ,现在的FO看起来是这样的:
<fo:wrapper font-size="80%" id="table_1ECAD9B3F5FC44A68240330AEFC1C2E2" space-after.optimum="1em" span="all">
<fo:table border-bottom-color="black" border-bottom-style="solid" border-bottom-width="1pt" border-left-color="black" border-left-style="solid" border-left-width="1pt" border-right-color="black" border-right-style="solid" border-right-width="1pt" border-top-color="black" border-top-style="solid" border-top-width="1pt" id="" space-after.optimum="5pt" space-before.optimum="5pt" table-layout="fixed" width="100%">
....
</fo:table>
</fo:wrapper>
没有任何警告的消息现在在生成过程中,好像它做了接受fo:wrapper的@ span =“all”。但是,在生成的pdf中,表格仍然像以前一样分成两列。该文章指的是Docbook xslfo,而我正在使用XMetal附带的自定义xslfo。
想知道是否有专家有类似的经验(使用XEP,在多列环境中设置@span)共享?
非常感谢。 – Kevin 2012-03-04 16:05:43
不客气。你的样式表祝你好运! – mzjn 2012-03-04 17:47:24
你可以看看我的后续问题:http://stackoverflow.com/questions/9710903/put-a-spanning-table-in-its-own-page-sequence – Kevin 2012-03-14 22:00:16