历史版本4 :点击文字展示对应图片 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 问题描述

在报表设计时有时会遇到如下需求:图片与文字说明分开并形成目录的形式,点击文字才能展示对应的图片。如下图所示:

1612406576436278.gif

1.2 解决思路

先通过添加「超级链接>动态参数」设置过滤,然后使用 TOIMAGE() 函数设置图片展示。

2. 示例

2.1 数据准备

新建普通报表,新建两个内置数据集分别为「问题」和「回答」。为了方便两个数据集之间建立联系,这里以 ID 字段作为唯一标识。如下图所示:

Snag_2844cf9a.png

2.2 图片准备

点击下载图片包:picture.rar

将每个问题对应的图片按照回答的ID进行重命名,例如第一个回答对应的图片则以「1」来命名。将所有准备好的图片放置本地路径,或者是服务器路径(请注意区分服务器为 Windows 还是 Linux ),因为在 TOIMAGE() 函数中,Windows 路径表示为 D:/1.png,在 Linux 中路径表示为 /u01/.../.../1.png

本示例将图片放置在本地的报表工作目录下:D:\FineReport_10.0\webapps\webroot\WEB-INF\reportlets\picture

注:picture 为自己创建的文件夹。

2.3 报表设计

单元格内容设置如下表:

单元格
操作
A1插入图片,选择图片时插入方式选择「适应」
C1~E1合并单元格,插入普通文本「问题描述」,调整字体样式为「华文琥珀」,字体大小为 19
G1~P1
合并单元格,插入图片,选择图片时插入方式选择「适应」
A2拖入「问题」数据集的 ID 列
B2输入文本「 . 」,表示序号与文字隔开的点
C2~E2合并单元格,拖入「问题」数据集的 Q 列
G2~P2合并单元格,拖入「回答」数据集的 A 列。设置扩展方向为「不扩展」,「左父格」为无
G3~P27
合并单元格以展示图片。设置「左父格」为无

单元格内容设置完成后,给标题行添加下边框,表格样式如下图所示:

Snag_28561d1b.png

注:第一行的文字与图片仅为装饰,可自行设计,小图片下载可参考此网站:阿里巴巴矢量图库 。

2.4 设置动态参数

因为要通过点击问题文字达到展示图片的效果,所以要给问题文字所在单元格添加一个动态参数类型的超级链接

选中 C2 单元格,点击右侧属性面板「超级链接」,添加「动态参数」,参数名称为「ID」,值类型为公式,输入 A2。如下图所示:

1612409459541359.png

注:设置超链后字体为变成蓝色并带有下划线显示,手动调整字体设置取消下划线,字体颜色设为黑色即可。

2.5 设置过滤

双击回答所在单元格 G2,设置过滤,设置「回答」数据集中的 ID 字段等于参数 $ID

注:此处的 $ID 也是对应每个图片名称的 ID。

1612409801664735.png

2.6 设置图片展示

1)选中 G3 单元格,单击鼠标右键选择「单元格元素>插入公式」,TOIMAGE() 公式为:TOIMAGE("D:/FineReport_10.0/webapps/webroot/WEB-INF/reportlets/picture/" + $ID + ".png", false)

注:需要将文件目录路径中的 \ 都改为 /  。

1612410304186337.png

注:因为图片的名称($ID)需要与「回答」数据集中的 ID 字段一一对应,所以只能放置一张图片。

2)G3 单元格展示图片时可能图片大小不一,会显示不全,设置「单元格属性>样式>对齐」的图片布局为「适应」即可。

1612410585270718.png

2.7 效果预览

2.7.1 PC 端

保存报表,点击「分页预览」,效果如 1.1 节所示。

2.7.2 移动端

App 端和 HTML5 端均支持,效果如下图所示:

2991F14A-279A-4547-A231-6E846B0873A9.GIF

注:本文示例仅以普通报表为例,在决策报表中报表块之间同样适用,详情可自行下载模板查看。

3. 模板下载编辑

已完成模板可参见:

%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\点击文字显示图片-普通报表.cpt

%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\frm\点击文字显示图片-决策报表.frm

点击下载模板:

点击文字显示图片-普通报表.cpt

点击文字显示图片-决策报表.frm