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

目录:

1. 概述编辑

1.1 问题描述

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

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

Snag_1715a81.png

1.2 实现思路

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

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

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

2. 示例编辑

2.1 数据准备

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

1573457573459224.png

2.2 方法一:分散对齐实现

1)如下图设计表格样式,将数据集中的字段拖拽到对应单元格中。

Snag_f92dd73.png

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

1622443776432107.png

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

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