现在报表工具被广泛应用在各行业中实现 web 端的数据展现,其中有很多行业都会涉及文档的数据展现形式,大多文档中都会存在大段的文字,比较常见的如保险公司的保单,医疗行业里的药检证明等。而在报表中数据展现的基本单位是单元格,如果一个字段的内容是大段文本,内容非常多,要如何换行显示并且根据内容扩大格子高度?当内容多到一页放不下的时候,要如何设置才能自动将没显示完的内容分到下一页显示呢?
下面我会对常见文档报表中出现的大文本需求实现具体说明下。
内容超过格子宽度自动换行显示
报表单元格的尺寸调整方式默认为按设计尺寸不变,当内容很多,因为格子大小固定,内容只能显示出格子那么宽的内容。
为了看的效果更明显些,我给 A1 设置了边框,下面是预览的效果。
设置 A1 格子自动换行,它的寸调整方式会自动变成为按单元格内容扩大,这样设置后,文本内容就会分在多行显示。
预览效果如下:
内容超过一页截取部分显示
设置单元格的扩展方式为按单元格内容扩大,自动换行的话,当文本比较多,多到一页没显示完的时候,默认会在内容最后显示“文本太长,超出部分未显示……”。
除了截图中这种自动的截取方式外,也可以通过润乾的字符串截取函数进行截取,配合提示功能,实现格子中展现部分内容,鼠标指向展现全部内容的效果。
大文本内容分页显示
如果想余下的内容可以分在下一页中显示需要做如下设置:
(1)可以在当前行下增加一行;
(2)并将新增的行和原来大文本所在行进行合并单元格设置;
(3)并将合并行设置上单元格拆分。
页面展现的效果,在下一页中将内容完全展现。
调整大段文本在分页时与页脚的距离
当大段文本分了多页,报表带有页脚,对于正文中的大文本和页脚的距离如果出现较大的情况,可以通过下面的两种方法控制:
(1)增加多行进行合并,设置单元格拆分;
当内容一定的时候,通过增加多行进行合并,如下面的报表,增加行合并,然后预览,最后调整完报表后增加了差不多有一百行。
(2)根据内容多少动态扩展单元格大小。
根据字符个数大致算出展现大文本需要的行数,在大文本单元格后,用 to(1,len( 大文本所在单元格)/ 每行最多的字符个数 ),然后动态扩展相应数量的行,拉伸大文本所在单元格的行高,辅助列宽度为 0。
需要注意的是内容所在格子高度要合适,如上图中 A236 单元格的高要合适,因为当内容越多,行数就越多,由于行高需要是整数像素,那乘起来,误差也就越大。
以上介绍了常见报表中带有大文本报表的效果和设置方法,如果你也遇到了这种大文本的问题,可以参考看下,希望有助于你更轻松搞定报表中的大文本,如果上面没有讲到你所遇到的大文本需求或问题,欢迎下面留言,我再补充。