最新历史版本 :文本两端对齐 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

报表服务器版本
11.0

1.2 问题描述

有时候,同一个单元格扩展出来的值长短不一,但是相差并不是很大,希望展示的时候它们的长度可以相同,达到对齐的效果。

如下图所示,单位和姓名扩展出来的值长度不一样,经过处理后文本两端对齐。

Snag_1715a81.png

1.3 实现思路

有 2 种方法可以实现文本两端对齐的效果,思路分别如下:

方法一:直接使用内置的单元格分散对齐功能。

方法二:使用 HTML 标签改变文字之间的间隔,使用空格拼接字符串。

2. 示例编辑

2.1 数据准备

新建内置数据集,数据如下所示:

1573457573459224.png

2.2 方法一:分散对齐实现

1)设计表格样式,将数据集中的字段拖拽到对应单元格中。在 A1 单元格中插入公式:seq(),如下图所示:

Snag_f92dd73.png

2)选中要调整的 B1 和 C1 单元格,右侧属性面板选择「单元格属性>样式>对齐」,将水平对齐修改为「分散对齐」,左右各缩进 10 ,如下图所示:

1.png

3)保存报表,分页预览后文本两端对齐效果如下图所示:

注:方案一移动端仅支持 App ,不支持 HTML5 端。

Snag_f9cea15.png

2.3 方法二:HTML标签实现

1)如下图设计表格样式。

Snag_175deff.png

2)选中 B2 单元格,设置「单元格属性>形态>公式形态」,添加如下公式:

if(len($$$)=4,"<div style='letter-spacing:4px;'>"+$$$+"</div>",if(len($$$)=6,"<div style='letter-spacing:-2.3px;'>"+$$$+"</div>",$$$))

注1:这里因为分析了单位分别有长度为 4、5、6 三种情况,所以保持中位数 5 长度的单位不变,4 长度的加大间隔,6 长度的缩短间隔。用户需要根据自己应用场景的实际字数进行调整。

注2:由于字体和大小等原因,加大缩短的具体数值需要根据自己的实际情况来调整。

Snag_17f0373.png

3)B2 单元格设置使用 HTML 显示内容。

Snag_17f34b5.png

4)选中 C2 单元格,设置「单元格属性>形态>公式形态」,添加如下公式:

if(len($$$)=2,left($$$,1)+" "+right($$$,1),$$$)

注:公式中间拼接的是一个空字符,请将输入法切换到全角后再按一下空格键。

Snag_1823b1f.png

5)保存报表,分页预览后文本两端对齐效果如下图所示: 

Snag_185f345.png

注:H5 效果使用 HTML 标签部分需要另外调整一下具体间隔。

3. 模板下载编辑

3.1 方法一

已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Parameter\分散对齐实现文本两端对齐.cpt

点击下载模板:分散对齐实现文本两端对齐.cpt

3.2 方法二

已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Parameter\文本两端对齐.cpt

点击下载模板:文本两端对齐.cpt