首页 / JAVA / Java-fo:数据单元溢出
Java-fo:数据单元溢出
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java-fo:数据单元溢出,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1468字,纯文字阅读大概需要3分钟。
内容图文
![Java-fo:数据单元溢出](/upload/InfoBanner/zyjiaocheng/670/18268679d52f406784cf799f71ea49a4.jpg)
我正在使用XSLT-> FO生成PDF.
当列中的文本超过该列的大小并且文本中没有空格时,该文本将遍历下一个单元格或在表外部.
我希望文本被占用相同的单元格.
提前感谢,
斯威莎
解决方法:
您可以通过插入零宽度的空格字符(U 200B,HTML实体​)将文本拆分为多个单词,然后在以下位置出现换行符:
<xsl:template name="split_value">
<xsl:param name="value"/>
<xsl:param name="max_length"/>
<xsl:variable name="ret">
<xsl:value-of select="substring($value, 1, $max_length)"/>
<xsl:if test="string-length($value) > $max_length">
<xsl:value-of select="'​'"/>
<xsl:call-template name="split_value">
<xsl:with-param
name="value"
select="substring($value, $max_length + 1)"
/>
<xsl:with-param
name="max_length"
select="$max_length"
/>
</xsl:call-template>
</xsl:if>
</xsl:variable>
<xsl:value-of select="$ret"/>
</xsl:template>
注意:您可能需要增强模板,以便在$max_length个连续字符之间没有空格的情况下仅拆分文本.
这是一个测试案例.
输入XML:
<data>0123456789</data>
样式表(生成HTML):
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
exclude-result-prefixes="xsl"
>
<xsl:template match="/">
<html>
<body
style="font-family: Arial; font-size: 12pt; font-weight: normal"
>
<table width="4cm">
<xsl:for-each select="/data">
<tr><td>
<xsl:call-template name="split_value">
<xsl:with-param
name="value"
select="text()"
/>
<xsl:with-param
name="max_length"
select="number(4)"
/>
</xsl:call-template>
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
内容总结
以上是互联网集市为您收集整理的Java-fo:数据单元溢出全部内容,希望文章能够帮你解决Java-fo:数据单元溢出所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。