SQL Server报表服务以及使用重叠数据
2010-01-21 00:00:00 来源:WEB开发网所有场景都使用一个96 dpi 分辨率的背景图片
利:这种方法意味着解决问题的最简单方法。
弊:以96 dpi 分辨率的图片为背景的报表在ReportViewer里应该能正确显示,但在打印或输出为PDF时,质量应该会很差。
所有场景都使用一个高分辨率的背景图片
利:报表基于高分辨率图像组件,可以获得高品质印刷效果。
弊:报表在浏览器中的效果不会像打印它时一样。预览进程可能会因消耗大量资源而表现不佳,并很可能最终导致内存溢出的异常。
在一个报表中混合使用低分辨率和高分辨率的图像
利:将一个报表内同时放入低分辨率和高分辨率图像,能够涵盖最典型的应用场景。
弊:这种方案在设计每张报表和在进行可复用的开发时,都需要额外的代价。这种方案的另一种实现方法是针对网页和/或Windows应用实现一个定制的报表查看器。
高低双分辨率解决方法
此解决方案在一份报表中使用两种不同分辨率的图像,一张96 dpi的图片和一张本例中为300dpi的高分辨率图片。ReportViewer默认就定制有此功能,可以在不同场景中选择正确处理的图像,如在浏览时和打印时。
在低分辨率时对打印质量低下的挑战(见上文挑战A),通过在每页中使用两个不同版本的图像,并执行一个特殊的逻辑在浏览和打印时来切换这些图像得到了解决。
第二个挑战是在高分辨率图片时如何在屏幕上正确显示报表(见上文挑战B),这个只要不在浏览和打印预览时使用高分辨率图像就解决掉了。我们在 WinForms报表查看器中指定预览时使用低分辨率的图像,在网页激活打印时使用PDF格式预览。这使我们能够显著减少对性能的影响和内存的压力。
第三个挑战是HTML渲染不支持元素重叠显示(见上文挑战C),只要不使用HTML渲染器,而使用内建的JPEG渲染器就可以解决这个问题,一次只将报表的一个单页渲染成一张JPEG图像,并建立一个自定义报表查看器来浏览报表中的每个单独页面。
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
- ››Sql server 2005拒绝了对对象 'xx表' (数...
更多精彩
赞助商链接