1

我有一个需要在多个报告的标题中重复的标题图像。我知道您可以将图像添加到报告中并指向图像文件所在的路径,例如file://C:\path\to\Reports\Images\logo.gif,但是在部署应用程序时该路径可以并且将会改变。

我尝试使用相对路径(假设报告在Reports/文件夹中)Images/logo.gif(或Images\logo.gif),但这只会在设计器和实际输出中产生损坏的图像。我的语法不正确吗?如果没有,有没有办法做这样的事情?

编辑:我也知道将图像嵌入到报告中,但是这个图像需要嵌入到每个报告中,如果需要更改,则必须在每个报告中单独更改。

4

3 回答 3

1

将路径存储在数据库中的变量中,并且只保留表中每个图像的字段名称。在运行您的应用程序时将它们放在一起。

因此,您将拥有一张带有图像的表格:

record1 otherdata image1.gif
record2 otherdata image2.gif

和另一个具有系统变量的表,包括

imagepath  c:\path\to\reports\images\
于 2009-01-20T17:36:52.857 回答
0

我们有动态标题标志。我们只是将图像存储在数据库中,这样更容易。徽标足够小,不会对性能造成太大影响。

Image 控件上的 Image 属性:

=First(Fields!BlobData.Value, "spimGetReportImg")

spimGetReportImg 数据集只是调用我们用来获取正确图像的存储过程。IE:

CREATE PROCEDURE [dbo].[spimGetReportImg]
@pk
AS 
BEGIN
SET NOCOUNT ON
SELECT b.BlobData
FROM   dbo.tblBlob b
WHERE  pkBlob = @pk
于 2009-02-02T18:27:06.710 回答
0

这篇博文中描述了我们最终所做的事情。我们认为这是一个足够好的解决方案,即使路径目前是硬编码的。

于 2009-02-02T21:37:22.880 回答