您的位置:首页 > 其它

【水晶报表之图片篇-c】 CR 11版本动态加载的另一种简单方案

2015-03-24 16:09 627 查看
2005年我在《水晶报表中如何动态加载图片(图片文件版本及数据库版本)》

提供的方法中,用了编程的方法,虽然也实现了,但是比较繁琐

地址:

/article/4662151.html

对于数据库中仅保存图片路径的情况,主要是用了根据路径读取图片为stream的方法

今天一个无意中的发现了另外一种简便的实现方法,不用编程,直接用水晶报表就能实现

本文基于CR XI 独立版本实现。CR9和CR10都无此功能。

首先构建两个表testpics_1和testpics_2,其中1保存了图片的绝对路径,1保存了相对路径



路径中的图片都已经放到了指定位置,其中1的第4条记录对应的图片不真实存在。

先以表1为例子,设计如下报表,在详细资料节加入一个图片。



预览为如下效果



在图片上点右键,



进入如下界面



编辑公式为



再刷新报表,就出现了想要的效果



注意第3条记录,对gif格式文件应该是不支持,所以显示了初始图片

第4条记录的图片不存在,也显示了默认图片

重新以表2做一个新的报表,因为这个路径是相对的,所以在公式中写如下内容,



刷新后显示的是初始图片



将该报表保存到c盘,与test2目录平级,重新刷新报表,图片正确显示。



--over--

在我的项目中,我是用报表的参数来作为路径的,

picPath = AppDomain.CurrentDomain.BaseDirectory + @"../../../Picture/";

testReport.SetParameterValue("testPath", picPath+"aa.jpg");

然后图片的路径设置为{?testPath}即可

最后,水晶报表,我草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马草泥马
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: