WEB开发网
开发学院数据库MSSQL Server SQL Server报表服务以及使用重叠数据 阅读

SQL Server报表服务以及使用重叠数据

 2010-01-21 00:00:00 来源:WEB开发网   
核心提示: 所有场景都使用一个96 dpi 分辨率的背景图片 利:这种方法意味着解决问题的最简单方法,弊:以96 dpi 分辨率的图片为背景的报表在ReportViewer里应该能正确显示,SQL Server报表服务以及使用重叠数据(3),但在打印或输出为PDF时,质量应该会很差,而使用内建的JPEG渲染

所有场景都使用一个96 dpi 分辨率的背景图片

利:这种方法意味着解决问题的最简单方法。

弊:以96 dpi 分辨率的图片为背景的报表在ReportViewer里应该能正确显示,但在打印或输出为PDF时,质量应该会很差。

所有场景都使用一个高分辨率的背景图片

利:报表基于高分辨率图像组件,可以获得高品质印刷效果。

弊:报表在浏览器中的效果不会像打印它时一样。预览进程可能会因消耗大量资源而表现不佳,并很可能最终导致内存溢出的异常。

在一个报表中混合使用低分辨率和高分辨率的图像

利:将一个报表内同时放入低分辨率和高分辨率图像,能够涵盖最典型的应用场景。

弊:这种方案在设计每张报表和在进行可复用的开发时,都需要额外的代价。这种方案的另一种实现方法是针对网页和/或Windows应用实现一个定制的报表查看器。

高低双分辨率解决方法

此解决方案在一份报表中使用两种不同分辨率的图像,一张96 dpi的图片和一张本例中为300dpi的高分辨率图片。ReportViewer默认就定制有此功能,可以在不同场景中选择正确处理的图像,如在浏览时和打印时。

在低分辨率时对打印质量低下的挑战(见上文挑战A),通过在每页中使用两个不同版本的图像,并执行一个特殊的逻辑在浏览和打印时来切换这些图像得到了解决。

第二个挑战是在高分辨率图片时如何在屏幕上正确显示报表(见上文挑战B),这个只要不在浏览和打印预览时使用高分辨率图像就解决掉了。我们在 WinForms报表查看器中指定预览时使用低分辨率的图像,在网页激活打印时使用PDF格式预览。这使我们能够显著减少对性能的影响和内存的压力。

第三个挑战是HTML渲染不支持元素重叠显示(见上文挑战C),只要不使用HTML渲染器,而使用内建的JPEG渲染器就可以解决这个问题,一次只将报表的一个单页渲染成一张JPEG图像,并建立一个自定义报表查看器来浏览报表中的每个单独页面。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:SQL Server 报表

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接