1

美好的一天
,我有这个 XSL-FO

<fo:table table-layout="fixed" border-width="0.2mm"  border-color="#330099" border-style="groove" 
            border-collapse="separate" background-color="white" line-height="16pt" space-before.optimum="10pt" 
            space-after.optimum="6pt" text-align="left" >       
                <fo:table-column column-width="37mm"/> 
                <fo:table-column column-width="37mm"/> 
                <fo:table-column column-width="37mm"/> 
                <fo:table-column column-width="37mm"/> 
                <fo:table-column column-width="37mm"/> 
                <!-- <fo:table-column column-width="38mm"/> --> 
        <fo:table-body>
            <fo:table-row>
                <fo:table-cell border-width="0.01mm" border-color="#330099"  border-style="groove" background-color="lightgrey">
                    <fo:block text-align="left" color="#000000" font-size="8pt" font-weight="bold">Account Number</fo:block>
                </fo:table-cell>
                <fo:table-cell border-width="0.01mm" border-color="#330099"  border-style="groove" background-color="lightgrey">
                    <fo:block text-align="left" color="#000000" font-size="8pt" font-weight="bold">Customer Id</fo:block>
                </fo:table-cell> 
                <fo:table-cell border-width="0.01mm" border-color="#330099"  border-style="groove" background-color="lightgrey">
                    <fo:block text-align="left" color="#000000" font-size="8pt" font-weight="bold">Account Currency</fo:block>
                </fo:table-cell>
                <fo:table-cell border-width="0.01mm" border-color="#330099"  border-style="groove" background-color="lightgrey">
                    <fo:block text-align="right" color="#000000" font-size="8pt" font-weight="bold">Opening Balance</fo:block>
                </fo:table-cell>
                <fo:table-cell border-width="0.01mm" border-color="#330099"  border-style="groove" background-color="lightgrey">
                    <fo:block text-align="right" color="#000000" font-size="8pt" font-weight="bold">Closing Balance</fo:block>
                </fo:table-cell>
            </fo:table-row>

 </fo:table-body>
 </fo:table>


我的问题是:我想在这张桌子上应用粗边框,
可以使用border-radius 吗?
或任何其他方法?

4

3 回答 3

1

尝试 space-before=5mm space-after=5mm

您可以在 fo 块标签中使用 space-after=5mm。例子

<fo:block space-after=5mm>Something</fo-block>
<fo:block>SomethingSomething</fo:block>

第一行将在文本“Something”之后创建 5 毫米的空间。

于 2014-05-30T06:25:47.680 回答
1

选项 1) 最佳:为每个角创建小型 SVG 图像,然后使用表格内部的表格进行格式化……外部表格有小的左/右列和顶部/底部行,中间有一个大单元格。把你的桌子放到中间的大格子里。您甚至可以只用四个圆角图像和适当的边框应用来做到这一点。如果您需要这种结构来跨越一个跨页的表格,那么角图像需要位于 XSL FO 的页眉/页脚中。

选项 2) 几乎一样好。如果您知道表格的宽度,只需表格顶部和底部的单行,圆角边缘和线条之间,然后将中间的表格与适当的左/右边框匹配以进行四处走动。您只需在表格的开始/结束处添加单行和单元格(跨越所有列)。

选项 3)取决于您的情况......如果表格的高度和宽度相当一致,您可以使用圆角 SVG 图像作为表格的背景图像或包围表格的块。您可以缩放它以适应宽度和高度。这种方法可能会扭曲拐角的曲线,这就是为什么它只有在您事先知道桌子的尺寸时才有效(或者至少可以近似它。我也在高度可变的文档中使用了这种方法,但是数学上已知...也就是说,表格可能有 5 行或 10 行或其他任何内容,但宽度始终一致... XSL 用于“计数”行并为背景选择适当的外部 SVG(如表格-bg-row-5.svg ...表-bg-row-10.svg)。

请注意,任何或所有这些在 XSL FO 中无需扩展即可实现,并允许您在表格中创建任何类型的自定义边框,而不仅仅是圆角。

于 2013-06-16T20:28:01.323 回答
1

尝试<fo:block space-after=5mm space-before=5mm>to get space both front and end/fo-block>

于 2014-06-04T04:05:26.287 回答