如何轻松搞定报表中的大段文本

本文介绍在报表工具中处理大段文本的技巧,包括自动换行、内容分页及调整与页脚距离的方法,帮助解决常见文档报表中的大文本显示问题。

现在报表工具被广泛应用在各行业中实现 web 端的数据展现,其中有很多行业都会涉及文档的数据展现形式,大多文档中都会存在大段的文字,比较常见的如保险公司的保单,医疗行业里的药检证明等。而在报表中数据展现的基本单位是单元格,如果一个字段的内容是大段文本,内容非常多,要如何换行显示并且根据内容扩大格子高度?当内容多到一页放不下的时候,要如何设置才能自动将没显示完的内容分到下一页显示呢?

下面我会对常见文档报表中出现的大文本需求实现具体说明下。

内容超过格子宽度自动换行显示

报表单元格的尺寸调整方式默认为按设计尺寸不变,当内容很多,因为格子大小固定,内容只能显示出格子那么宽的内容。

1png

为了看的效果更明显些,我给 A1 设置了边框,下面是预览的效果。

2png

设置 A1 格子自动换行,它的寸调整方式会自动变成为按单元格内容扩大,这样设置后,文本内容就会分在多行显示。

3png

预览效果如下:
4png

内容超过一页截取部分显示

设置单元格的扩展方式为按单元格内容扩大,自动换行的话,当文本比较多,多到一页没显示完的时候,默认会在内容最后显示“文本太长,超出部分未显示……”。

5png

除了截图中这种自动的截取方式外,也可以通过润乾的字符串截取函数进行截取,配合提示功能,实现格子中展现部分内容,鼠标指向展现全部内容的效果。

大文本内容分页显示

如果想余下的内容可以分在下一页中显示需要做如下设置:

(1)可以在当前行下增加一行;

(2)并将新增的行和原来大文本所在行进行合并单元格设置;

6png

(3)并将合并行设置上单元格拆分。

7png

页面展现的效果,在下一页中将内容完全展现。

8png

调整大段文本在分页时与页脚的距离

当大段文本分了多页,报表带有页脚,对于正文中的大文本和页脚的距离如果出现较大的情况,可以通过下面的两种方法控制:

(1)增加多行进行合并,设置单元格拆分;

当内容一定的时候,通过增加多行进行合并,如下面的报表,增加行合并,然后预览,最后调整完报表后增加了差不多有一百行。
9png

(2)根据内容多少动态扩展单元格大小。

根据字符个数大致算出展现大文本需要的行数,在大文本单元格后,用 to(1,len( 大文本所在单元格)/ 每行最多的字符个数 ),然后动态扩展相应数量的行,拉伸大文本所在单元格的行高,辅助列宽度为 0。

10png

需要注意的是内容所在格子高度要合适,如上图中 A236 单元格的高要合适,因为当内容越多,行数就越多,由于行高需要是整数像素,那乘起来,误差也就越大。

以上介绍了常见报表中带有大文本报表的效果和设置方法,如果你也遇到了这种大文本的问题,可以参考看下,希望有助于你更轻松搞定报表中的大文本,如果上面没有讲到你所遇到的大文本需求或问题,欢迎下面留言,我再补充。

字段名称 类型 长度 小数 说明   1 PLATFORM C 8 操作平台(_DOS或_WINDOWS)   2 UNIQUEID C 10 唯一标识(当NAME合EXPR都为空时以_RHE开头, 否则以_RNR开头)   3 TIMESTAMP N 10 时间标签(先后次序)   4 OBJTYPE N 2 目标类型(1.环境; 2.数据库; 5.文字; 8.变量;9.TIMESTAMP为空; 23.TIMESTAMP为空) 5 OBJCODE N 3 目标代码(1.;4.;7.;53)   6 NAME M 10 名称(数据库名称)   7 EXPR M 10 表达式   8 VPOS N 9 3 座标   9 HPOS N 9 3 列座标   10 HEIGHT N 9 3 高度   11 WIDTH N 9 3 宽度   12 STYLE M 10 风格(透明,不透明)   13 PICTURE M 10 格式或OLE文件名称   14 ORDER M 10 索引排序   15 UNIQUE L 1 唯一数据库(.F.,.T.,空)   16 COMMENT M 10 注释   17 ENVIRON L 1 是否报表环境(.T.时)   18 BOXCHAR C 1 画框字符   19 FILLCHAR C 1 表达式类型(C,N,D等,文字型的为空)   20 TAG M 10 (当该记录为记录环境的记录时,该字段储存打印信息等;记录数据库时,储存数据库名称)   21 TAG2 M 10 当该记录为记录环境的记录时,该字段储存打印控制等   22 PENRED N 5 前景红   23 PENGREEN N 5 前景绿   24 PENBLUE N 5 前景蓝   25 FILLRED N 5 填充红   26 FILLGREEN N 5 填充绿   27 FILLBLUE N 5 填充蓝   28 PENSIZE N 5 划线宽度   29 PENPAT N 5 指定填充图案(0.空;1.实体;2.水平;3.垂线;4.左  斜;5右斜;6.交叉;7.斜交叉)   30 FILLPAT N 5 划线类型(0.无;1.点;2.虚线;3. 虚线-点;4. 虚线-点-点)   31 FONTFACE M 10 字体类型   32 FONTSTYLE N 3 字体风格   33 FONTSIZE N 3 字体大小   34 MODE N 3 模式   35 RULER N 1 标尺(2-默认值,3-象素)   36 RULERLINES N 1 标线宽度   37 GRID L 1 是否显示网格线   38 GRIDV N 2 垂直网格线刻度   39 GRIDH N 2 水平网格线刻度   40 FLOAT L 1 浮动   41 STRETCH L 1 溢出时伸展   42 STRETCHTOP L 1 相对于顶端伸展   43 TOP L 1 相对于顶端固定   44 BOTTOM L 1 相对于底端固定   45 SUPTYPE N 1 控制类型   46 SUPREST N 1 控制设置   47 NOREPEAT L 1 每页都打印页标题   48 RESETRPT N 2 重置报表   49 PAGEBREAK L 1 每组从新的一页开始   50 COLBREAK L 1 从新的一列开始   51 RESETPAGE L 1 每组页号重新从1开始   52 GENERAL N 3 通用   53 SPACING N 3 空格   54 DOUBLE L 1 是否加倍   55 SWAPHEADER L 1 头互换   56 SWAPFOOTER L 1 脚注互换   57 EJECTBEFOR L 1 打印前走纸   58 EJECTAFTER L 1 打印后走纸   59 PLAIN L 1 指定只在报表开始位置出现页标题   60 SUMMARY L 1 是否仅打印总计和分类总计信息   61 ADDALIAS L 1 是否增加别名   62 OFFSET N 3 偏移(0-左;1-右;2-居中)   63 TOPMARGIN N 3 上边界高度   64 BOTMARGIN N 3 下边界高度   65 TOTALTYPE N 2 计算类型   66 RESETTOTAL N 2 重置(1-表尾,2-页尾)   67 RESOID N 3 源标识   68 CURPOS L 1 是否显示当前位置   69 SUPALWAYS L 1 是否打印重复值   70 SUPOVFLOW L 1 当细节区数据溢出时到新页或新列打印   71 SUPRPCOL N 1 当此列改变时打印   72 SUPGROUP N 2 当此组改变时打印   73 SUPVALCHNG L 1 若空则删除   74 SUPEXPR M 10 是否打印控制条件   ==============================   Objtype Objcode Offset 含义   5 0 文字   8 0 表达式   6 0 1 直线(水平线)   6 0 0 直线(垂直线)   7 4 矩形框(0~99椭圆)   用于报表布局的控制的特征值列入下表:   Objtype Objcode 含义   9 0 页头高度   9 1 页细节高度   9 3 组标头高度   9 4 组细节高度   9 5 组脚注高度   9 7 页脚注高度   其他常用到的字段有: ①水平坐标(Hpos); ②宽度(Width); ③表达式类型(Fillchar);   ④字体(Fontface); ⑤对齐方式(Offset)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值