通过读取XML生成Xsl FO + PDF

时间:2013-12-19 06:44:16

标签: xsl-fo

使用XSL FO无法为具有空值的单元格设置边框。我尝试使用border-collapse和empty-cells。不确定我是否正确使用它们。

XSL-FO示例

<fo:table-cell>
    <fo:block align="center" border-style="solid" border-top-width="1pt" border-right-width="1pt" border-left-width="1pt"
        border-bottom-width="0pt" border-color="black" padding="0pt">
        <xsl:value-of select="Jan"/>
    </fo:block>
</fo:table-cell>

2 个答案:

答案 0 :(得分:1)

尝试将属性从fo:block移至fo:cell ...

<fo:table-cell text-align="center" border-style="solid" border-top-width="1pt" border-right-width="1pt" border-left-width="1pt" border-bottom-width="0pt"
    border-color="black" padding="0pt">
    <fo:block>
        <xsl:value-of select="Jan"/>
    </fo:block>                             
</fo:table-cell>

如果这不起作用,请尝试为xsl:value-of ...

添加零宽度空间
<xsl:value-of select="concat(Jan,'&#x200B;')"/>

答案 1 :(得分:0)

<fo:table table-layout="fixed" border="solid">
<fo:table-column column-width="0.6in" border="solid"/>
<fo:table-row border="inherit">

可以在需要的地方应用边框。在将值传递给xsl .check以获取空值之前,如果值为空则传递空字符串