我有一个针对.net的C#应用程序4.该应用程序包含一些可以打印或预览的Crystal Reports报告。我的代码使用:
CrystalDecisions.CrystalReports.Engine.ReportClass
有一个使用Crystal 2008创建的报告,它可以从文件系统中动态提取一个或多个图像。当这些图像很大时,我遇到了问题。
例如:
当我打印或预览该报告时,通常会显示前两个图像,但不会再显示。然后,如果我再试一次,我通常不会看到任何图像,并经常得到这个消息框(预览时):
Crystal Reports Windows Forms Viewer
内存已满。
操作内存不足。
我的应用程序当时使用了大约600兆。
如果我将这些大图像替换为较小的图像(每个大约半个兆图像),我可以毫无问题地查看报告。
如果我使用Crystal Reports 2008编辑器中的大图像预览相同的报告,它可以很好地工作。
使用CrystalDecisions.CrystalReports.Engine.ReportClass时,我可以在报告中添加多少个图像数据?或者我做错了什么?
答案 0 :(得分:2)
报告包含多于3张图像时出现相同的问题。通过更改RPT文件中的设置来解决。 打开您的Crystal模板,进入“文件”->“报告选项”,然后取消标记“ 保留原始图像颜色深度”。 这将显示质量降低的图片,但绝不会由于“内存已满”而使报告失败。至少那是我的情况。