打印操作的后台原理
Windows的所有绘图指令,都集中在GDI模块中,称为GDI绘图函数。
图形输出到何处。关键是DC,这是任何GDI绘图函数的第一个参数,可以是GetDC或BeginPaint函数所获得的”显示器DC”.
每一个送往打印机DC的秽土操作,其实都只被记录为metafile,存储在我们的TEMP目录中。当调用Escape(hPr,NEWFRAME,…)时,打印机驱动程序(。DRV)会把这些metafile转换为打印语言(control Sequence或Postscript).然后通过GDI模块,由GDI把它存储为.SPL文件,也放在TEMP目录下,并删除对应的metafile。之后,GDI模块再送出消息给打印管理器Print Manager,由后者调用OpenComm,WriteComm等底层通讯函数(也都是Windows API函数),把打印机命令传递给打印机。