flying saucer 中文换行问题

    老外做的东西,没有考虑到中文问题。默认提供的包里,中文不会换行, 有人修改了源代码,解决了这个问题。这东西源码里面是将英文按空格分组,每组判断其位置+长度是否超出边界,超出的话将该组丢到下一行,但是中文里面基本没有空格,所以就无奈了。将其源码改了改,如果是中文,每字一组,如果是英文,还是按照空格分组,这样大概效率会受一些影响,不过好歹是可以用了,而且一般pdf生成我想应该也不会放在需要大访问量的地方吧。附件是打好包的jar,覆盖就可以了。需要注意的是,在官网提供的jar包里,有两个包,一个是core-renderer.jar,另一个是core-renderer-minimal.jar。引用时,只需引用前者就行。有人曾经说用这个重新编译后的包替换了原来的包之后,不起作用,原因就在此。

 另外,想要中文换行,如果是table,那么table 的style必须加上这句话

style="table-layout:fixed; word-break:break-strict;"  

 

    

你可能感兴趣的:(Flying,saucer,中文换行)