1.图片对象文档
可以自行选择看文档,嫌麻烦就跳过,想深入就仔细康康。
2.实际运用
2.1不使用数据列
不使用数据列直接按照上面文档上的操作即可,没有什么过多的介绍。
- 直接粘贴到报表中
- 本地图片文件路径(需要与报表一起发布)
- URL(直接给图片服务地址即可)
2.2使用数据列
这里对数据列采用三种方式进行尝试。
- 数据列为图片二进制数据
- 本地物理绝对路径
- 网络地址
为了测试我这里提供测试数据:
CREATE TABLE FastPicture(
Img VARBINARY(MAX)
,ImgUrl VARCHAR(200)
,ServerImgUrl VARCHAR(200)
)
INSERT INTO [dbo].[FastPicture](Img,ImgUrl,ServerImgUrl)
VALUES(
(SELECT * FROM
OPENROWSET(BULK N'F:\个人文件\个人头像.jpg', SINGLE_BLOB) JPG)
,N'F:\个人文件\个人头像.jpg'
,N'https://scpic.chinaz.net/files/pic/pic9/202103/bpic22688.jpg'
)
2.2.1 数据列为图片二进制数据
直接给PictureObject
选择列即可。
2.2.2 本地物理绝对路径
private void PLocal_BeforePrint(object sender, EventArgs e)
{
PLocal.ImageLocation=((String)Report.GetColumnValue("FastPicture.ImgUrl"));
}
注意:
PLocal
是PictureObject
名称。
另外:这里的本地地址F:\个人文件\个人头像.jpg必须与frx
文件在同一个机器中(能够找到对应绝对路径即可)
2.2.3 网络地址
private void PLocal_BeforePrint(object sender, EventArgs e)
{
PLocal.ImageLocation=((String)Report.GetColumnValue("FastPicture.ServerImgUrl"));
}
注意:
PServer
是PictureObject
名称。
另外:需要保证加载frx
文件机器能够访问到服务地址即可,通俗点就是能够Ping通。