改善图象质量,当使用 Visual Studio .NET 在 Web 上查看水晶报表报表时
2024-07-10 13:03:41
供稿:网友
文章里的知识针对:
visual studio .net 内置的水晶报表
应用于:
仅对被报告的版本
图象质量
web 查看器
大纲
web 程序使用 visual studio .net 内置的水晶报表作为报表开发工具。
当你在 web 上查看报表时,默认情况下图象和图表的分辨率被减小到 96 dpi(为了提高性能和下载速度)。
如何改善报表中图形的图象质量呢?
解决方案
通过改变系统注册表中图象的放大倍数,你可以改善报表中图形的图象质量。
==========
警告:
以下的决定包括编辑注册表。错误的使用注册表编辑器会导致严重问题,你可能需要重装 windows 操作系统。使用注册表将由你自己承担风险。
强烈建议你在编辑注册表之前备份注册表文件(在 win9x 计算机上是 system.dat 和 user.dat)。
要了解如何编辑注册表的知识
阅读注册表编辑器 (regedit.exe) 的联机帮助主题“更改项和值”。
==========
默认情况下,放大倍数设置存放在注册表根键 hkey_current_user,并且仅对当前登录用户有效。可是,当用户通过 web 被 iis 验证时,用户没有 hkey_current_user 根键的访问权。
因此,放大倍数设置必须被复制到 hkey_local_machine 根键才能起作用。
要将放大倍数设置复制到 hkey_local_machine 根键:
1. 单击 开始 > 运行,输入“regedit”并单击“确定”。
2. 进入注册表编辑器,并定位到下面的子键:
hkey_current_user/software/seagate software/crystal reports/export
3. 右击“export”子键,选择“新建”并选定“双字节值”。
4. 将项命名为 bitmapmagnifnumerator,然后双击项,并给项赋一个介于 1 和 4 之间的十进制值(4 代表最高质量的位图),单击“确定”。
5. 重复步骤 3 和 4 创建项 bitmapmagnifdenominator,并赋值为“1”。
6. 选中注册表子键 export,然后单击“注册表”菜单,并选择“导出注册表文件…”
输入文件名“export”,确保“导出范围”里选中了“选定的分支”单选按钮,并且该分支指向“export”子键。
7. 单击“保存”将注册表子键保存到桌面上。关闭注册表编辑器。
8. 编辑桌面上的注册表子键,右击注册表文件并选择“编辑”。文件将在记事本里打开,内容类似如下:
windows registry editor version 5.00
[hkey_current_user/software/seagate software/crystal reports/export]
"maildestdll"=""
"maildesttype"=dword:00000000
"bitmapmagnifnumerator"=dword:00000001
"bitmapmagnifdenominator"=dword:00000001
9. 编辑文件,将默认根键从 hkey_current_user 改为 hkey_local_machine。
要提高图象质量,修改双字节值 “bitmapmagnifnumerator”和“bitmapmagnifdenominator”。比如,你可以将分子 (bitmapmagnifnumerator) 设置为 3,分母 (bitmapmagnifdenominator) 不变仍为 1,这将改善质量为原来的 3 倍左右。最终的注册表子键类似如下:
windows registry editor version 5.00
[hkey_current_user/software/seagate software/crystal reports/export]
"maildestdll"=""
"maildesttype"=dword:00000000
"bitmapmagnifnumerator"=dword:00000003
"bitmapmagnifdenominator"=dword:00000001
10. 修改完毕后,保存并关闭文件。
11. 双击文件 export.reg 将新的子键和值导入注册表。iis 必须重新启动以使注册表改动生效。
通过提高水晶报表中图象的放大倍数,你同样增加了报表中所有位图的分辨率和文件大小。这将轻微的减小性能和下载速度。
=============
注意:
要增加 windows 程序的图象质量:
1. 单击 开始 > 运行,并输入“regedit”,然后单击“确定”。
2. 进入注册表编辑器,并定位到下面的子键:
hkey_current_user/software/seagate software/crystal reports/export
3. 在注册表的右侧窗格双击“bitmapmagnifnumerator”项,并在“数值数据”行输入“3”。
4. 单击“确定”,关闭注册表编辑器。