当它超过XSL-FO中的表格单元格长度时,我们可以将文本换行到下一行吗?

时间:2015-12-18 14:11:54

标签: xml xsl-fo

如果超过XSL-FO中表格单元格的长度,我需要将文本换行到下一行。

示例XSL-FO:

    <fo:table-row>
       <fo:table-cell padding-bottom="3px" text-align="right" width="4cm" margin="0" margin-right="0.27cm">
        <fo:block-container>
            <fo:block >
                <fo:inline>Herewith: </fo:inline>
            </fo:block>
        </fo:block-container>
    </fo:table-cell>
    <fo:table-cell  padding-bottom="3px" text-align="left" width="7cm" margin="0" margin-left="-0.22cm">
        <fo:block-container>
            <fo:block>
                <fo:inline  font-family="FrutigerLTStd-Bold" font-weight="bold">
                    <xsl:value-of select="herewith"/>
                </fo:inline>                                                    
            </fo:block>
        </fo:block-container>
    </fo:table-cell>

这里如果表格单元格值somethingxhsjdjfjkshkjkh“值超出,它将不会将它包装到下一行,直到我们在值之间给出一些空格。我尝试使用wrap-option =”wrap“。但是如果只有值中的空格,然后它会把它带到下一行。

有人可以为此提供帮助吗?

1 个答案:

答案 0 :(得分:0)

如果您的格式化程序支持连字并且文本可以连字符,则启用连字符会有所帮助。

如果允许您更改列宽,则启用自动表格布局(http://www.w3.org/TR/xsl11/#fo_table)可能会让格式化程序挤压其他列的宽度并增加此列的宽度,以便这段文字没有溢出。