找回密码
 立即注册

QQ登录

只需一步,快速开始

Fineex

初级会员

26

主题

70

帖子

210

积分

初级会员

积分
210
Fineex
初级会员   /  发表于:2020-8-12 18:44  /   查看:3679  /  回复:1
如下图:
是区域报表(基于代码)写的。把入参的 base64图片,转换成图片显示到报表控件中。


请问: 页面报表,要怎么来实现?这样的业务场景? 通过脚本?请帮忙给个demo

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

1 个回复

倒序浏览
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2020-8-12 19:16:39
沙发
您好,转换Base64 图片操作步骤如下,AR本身不直接支持该格式需要转换:
体操作方法如下:

(1) 数据库表设计字符型字段。如下图:


图中的Base64字段类型为varchar(MAX),就是用于保存图片的Base64内容的。

(2)  准备Base64字段内容
实际项目中,数据库中的Base64字符串都是通过程序代码转换得到的。
如果想要手工讲一个图片转成Base64字符串,可使用网上的图片转Base64的工具,一般上传一个图片文件,转换之后就能得到下面这样的字符串:
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAARMAAAGB....
将这个字符串从转换工具的网页上拷贝下来,去掉最前面的 data:image/png;base64, (包括最后的逗号),再粘贴到数据库的字段中,如下图:


当然使用insert语句也可以。

(3) 拖放图片元素到报表
如下图,在一个表格的单元格中拖放一个图片元素:


(4)  设置图片的数据
先展开图片元素的【图片】属性,以便看到更多设置选项,如下图:

再点击【数据】右侧的小方块图标,打开表达式编辑器,输入下面这样的表达式:
=Convert.FromBase64String(Fields!Base64.Value)
如下图:

这个表达式的含义是:将Base64字段值转成二进制的图片。
这样设置后,就可以预览报表了,效果如下图:

其中表格第三列是显示Base64字段的实际字符串内容,最后一列的红色块是实际的图片。

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部