电脑知识-Windows接口打印原理

2019-01-03 14:37 冶南钎具
冶南钎具为您提供windows接口打印的相关原理。
Windows接口打印是一种常见的打印方式,其打印过程就如在Word中打印文档一样。只要安装了打印机和其Windows驱动程序,就可以使用了,而且它不需要生成中间文件也不太需要软件程序的过多干预。
(1)打印原理
简单地说,地图数据的打印输出过程就是在打印机设备环境上绘制地图数据的过程。其中的关键是将地图数据的范围映射到打印机的设备范围上。而打印机设备范围是由两个要素决定的:打印纸的有效大小和打印分辨率,打印纸的有效大小是指打印机能实际打印的范围。因此,若纸张有效范围为(xmin, ymin, xmax, ymax)inch,打印分辨率为Rdpi,当前打印设备范围为(Dxmin, Dymin, Dxmax, Dymax),则有:
Dxmin =xmin·R;Dymin=ymin·R;
Dxmax =xmax·R;Dymax=ymax·R;
有了打印设备范围,根据地图数据的范围(Mxmin, Mymin,Mxmax, Mymax),就可以算出两个空间范围的横、纵向比例系数Sx, Sy:
Sx=(Dxmax-Dxmin)/(Mxmax-Mxmin);
Sy=(Dymax-Dymin)/(Mymax-Mymin);
根据比例系数,就可以进行坐标变化了对地图数据中的任一点p(x, y),经变换后有:
x′=(x-Mxmin)·Sx+Dxmin;
y′=(y-Mymin)·Sy+Dymin。
(2)打印流程
解决了数据的坐标变换问题,则打印步骤如下:
1)通过CPrintDialog对象取得打印机的设备环境句柄。有了设备环境句柄就能得到打印机的相关参数,如打印纸大小、有效打印范围、打印分辨率等并启动打印;
2)根据打印机参数就能计算出坐标变换的比例系数Sx和Sy;
3)取地图数据,根据比例系数Sx和Sy进行坐标变换、使用打印机设备环境句柄进行图形绘制即打印;
4)循环第三步,直到所有的地图数据被打印,则程序结束。
  • 冶南钎具官方微信