下午茶--报表打印
1.报表流程:设计->拓展 -> 绘制
2.屏幕效果和计算效果不相符: 计算机屏幕上得内容和打印出来的内容不相符,原因是打印机的分辨率和屏幕分辨率不同,因此会差生差异。打印机的分辨率一般在1200~2400dpi,而屏幕的分辨率未60~120dpi,打印机的精细度远远大于屏幕,这也是为什么一些图像在屏幕上有锯齿,打印出来就非常圆润。 同时字体大小也随着分辨率不同而发生大小变化,具体比例多少台清楚。
3.矢量打印:报表放大打印时会失真,一个比较好得解决方案是利用矢量方式打印。位图记录的是结果,放大会产生粗糙;但矢量图记录的是过程,不会随缩放产生失真。
4.报表导出pdf:一般的我们将图片、文档打印为pdf,是通过虚拟打印机实现,但是总不能在发表报表时内包一个虚拟打印机吧,这时介绍个重量级工具WMF。
WMF:WMF(Windows MetaFile)是一种Microsoft Windows的 图形文件格式。它是一个向量图格式,但是也允许包含位图。本质上,一个WMF文件保存一系列可以用来重建图片的Windows GDI命令。在某种程度上,它类似于印刷业广泛使用的PostScript格式。可以用Microsoft Office相关软件编辑,或是用Adobe开发的Flash和Illustrator等向量图编辑器。
Microsoft Office 的剪贴画使用的就是这个格式。
Wmf是Windows Metafile 的缩写,简称图元文件,它是微软公司定义的一种Windows平台下的图形文件格式。
wmf格式文件的特点如下:
1. wmf格式文件是Microsoft Windows操作平台所支持的一种图形格式文件,目前,其它操作系统尚不支持这种格式,如Unix、Linux等。
2. 与bmp格式不同,wmf格式文件是和设备无关的,即它的输出特性不依赖于具体的输出设备。
3. 其图象完全由Win32 API所拥有的GDI函数来完成。
4. wmf格式文件所占的磁盘空间比其它任何格式的图形文件都要小得多。
5. 在建立图元文件时,不能实现即画即得,而是将GDI调用记录在图元文件中,之后,在GDI环境中重新执行,才可显示图象。
6. 显示图元文件的速度要比显示其它格式的图象文件慢,但是它形成图元文件的速度要远大于其它格式
5.lbpdf.dll、pdf、等很多实现图像缩放不失真的技术大部分都是借助wmf,推测虚拟打印机也有可能是借助wmf实现的。
------------------------------------------------------------------------
知识点补充:
1.分辨率
分辨率(resolution,港台称之为解析度)就是屏幕图像的精密度,是指显示器所能显示的像素的多少。可以把整个图像想象成是一个大型的棋盘,而分辨率的表示方式就是所有经线和纬线交叉点的数目。以分辨率为1024×768的屏幕来说,即每一条水平线上包含有1024个像素点,共有768条线,即扫描列数为1024列,行数为768行。严格地说,只有当刷新频率为“无闪烁刷新频率”,显示器能达到最高多少分辨率,才能称这个显示器的最高分辨率为多少。LCD的最佳分辨率,也叫最大分辨率,在该分辨率下,液晶显示器才能显现最佳影像。
一些用户往往把分辨率和点距混为一谈,其实,这是两个截然不同的概念。点距是指像素点与点之间的距离,像素数越多,其分辨率就越高,因此,分辨率通常是以像素数来计量的,如:640×480,其像素数为307200。
分辨率是用于度量位图图像内数据量多少的一个参数。通常表示成每英寸像素(Pixel per inch, ppi)和每英寸点(Dot per inch, dpi)。包含的数据越多,图形文件的长度就越大。ppi 和dpi经常都会出现混用现象。从技术角度说,“像素”(P)只存在于计算机显示领域,而“点”(d)只出现于打印或印刷领域。
分辨率和图像的像素有直接的关系,我们来算一算,一张分辨率为640 x 480的图片,那它的分辨率就达到了307,200像素,也就是我们常说的30万像素,而一张分辨率为1600 x 1200的图片,它的像素就是200万。这样,我们就知道,分辨率的两个数字表示的是图片在长和宽上占的点数的单位。一张数码图片的长宽比通常是4:3。
列下各种分辨率:
PPI:
DPI(设备分辨率):设备分辨率(DeviceResolution):又称输出分辨率,指的是各类输出设备每英寸上可产生的点数,如显示器、喷墨打印机、激光打印机、绘图仪的分辨率。这种分辨率通过DPI来衡量,目前,PC显示器的设备分辨率在60至120DPI之间。而打印设备的分辨率则在360至2400DPI之间。
打印机的分辨率:某台为360DPI,是指在用该打印机输出图像时,在每英寸打印纸上可以打印出360个表征图像输出效果的色点。表示打印机分辨率的这个数越大,表明图像输出的色点就越小,输出的图像效果就越精细。打印机色点的大小只同打印机的硬件工艺有关,而与要输出图像的分辨率无关。
显示器分辨率:80DPI,是指在显示器的有效显示范围内,显示器的显像设备可以在每英寸荧光屏上产生80个光点。举个例子来说,一台14英寸的显示器(荧光屏对角线长度为14英寸),其点距为0.28mm那么:显示器分辨率=25.3995mm/inch÷0.28mm/Dot≈90DPI(1inch=2.539999918cm)。显示器出厂时一般并不标出表征显示器分辨率的DPI值,只给出点距,我们根据上述公式即可算出显示器的分辨率。根据我们算出的DPI值,我们进而可以推算出显示器可支持的最高显示模式。假设该14英寸显示器荧光屏有效显示范围的对角线长度为11.5英寸,因显示器的水平方向和垂直方向的显示比例为4:3,故可设有效显示范围水平宽度为4x 英寸,垂直高度为3x 英寸,根据数学上的勾股定理,可得x=11.5÷5=2.3英寸。所以有效显示范围宽度为2.3×4=9.2英寸,垂直高度为2.3×3=6.8英寸。最高显示模式约为:800(9.2×90)×600(6.8×90),这时是用一个点(Dot)表示一个像素(pixel)。
2.显示器分辨率设置与疾病预防(这个以前真不知道)
有研究显示,在800×600分辨率环境下工作的人,更有机会患上一些疾病,这与用手机打一天电话的效果是一样的。 因此,有专家提示人们应将显示器分辨率设置为1024×768以上,这样可以挡住更多辐射。