首页建站c gdi(C GDI)

c gdi(C GDI)

编程之家2024-02-08112次浏览

一、什么是GDI打印机

首先GDI驱动就是我们常说的基于主机的驱动,目前市场多数打印机已经不在使用次驱动程序,但少数机器仍在销售,比如HPlaserjet1005mfp。

c gdi(C GDI)

打印机驱动的分类:

一.基于主机的驱动程序

使用计算机而非打印机的内存资源和处理能力进行打印任务的处理,在计算机端完成打印光栅位图的转换过程,在打印机直接成像。

特点:

A、加速了打印速度。基于主机的打印机利用计算机的处理能力把应用软件的页面信息转换为光栅格式进行打印,由于现在的计算机的处理速度比大多数打印机的处理器快的多,用基于主机的打印机打印复杂的打印任务时通常会快些。大多数基于主机打印的打印机都使用打印速度更快的USB口而不用并口。例如,HPColorLaserJet1500标配基于主机驱动,在Windows和Macintosh操作系统中可以打印更复杂的打印作业而不用增加打印机的内存或者是牺牲打印速度和性能。

B、基于主机打印机可以处理光栅数据图像,减少打印机产生内存溢出的问题。

c gdi(C GDI)

C、基于主机打印要求计算机操作系统具备打印引擎,不能从计算机接受ASCII文本,这与页面描述语言(PageDescriptionLanguage)PDL打印不同。这就意味着基于主机的打印只能在Windows和Macintosh已经明确支持打印引擎的系统环境中使用,而不支持没有打印引擎的Windows、Macintosh、Linux,Unix,andOS/2等。

D、要求打印机和计算机直接相连,不适合网络打印作业,不支持网络服务器、共享器、磁带设备以及干扰通信设备的连接。

二.PCL与PS驱动程序

PCL和PS是两种标准化的页面描述语言,其工作流程都是首先在计算机端将打印内容解释成标准的页面描述文件然后传送到打印机控制器中,在打印控制器中再将页面描述文件解释成可以打印的光栅图像,从其工作流程看,此两种方式中都对打印机中的打印控制器有很高的要求,同时要求打印机内部有足够的内存。

1.PCL驱动程序

PCL语言是HP公司于70年代针对其激光打印机产品推出的一种打印机页面描述语言。PCL指令内嵌于打印数据流,把应用程序输出快速转译成高质量的、特定设备的光栅化图像。

c gdi(C GDI)

PCL5是HP公司为它的激光打印机LaserJetⅢ设计的,它提供了一些与PostScript语言相似的功能,开始支持矢量字库和矢量图形描述,实现了WYSIWYG(WhatYouSeeIsWhatYouGet,所见即所得),PCL5中也使用了各种压缩技术来减小数据量,加快数据传输。PCL5e开始支持双向数据通讯,从而使打印机可以向计算机发送打印机的状态信息。PCL5c增加了对彩色打印的支持。

1996年HP公司发布了PCL6,它更加灵活,是一个目标朝向的控制语言,使处理多图形的文件的速度大大加快,实现了更好的WYSIWYG,可以更好地处理Web页面。

特点:

使用PCL语言的打印机在处理文本或一些常见办公应用软件下的文档时具有非常明显的速度优势,比较适合一些普通的商务办公应用。

2.PostScript驱动程序

PS是一种与设备无关的打印机语言,即在定义图像时可以根本不考虑输出设备的特性(如打印机的分辨率、纸张大小等),而它对文本和图形实行同样的处理过程,这就给处理字体带来了极大的灵活性。通过PS驱动程序,各种不同的应用软件将各自的数据转换成PostScript格式。从打印引擎的工作原理可知,打印机只能接受位图格式,当打印机控制器将PostScript转换成位图格式时,由于PostScript十分复杂,一般的打印控制器难以胜任,通常由打印机中专门的光栅图像处理器(RasterImageProcessor)来完成这一转换过程。

特点:

PS驱动程序在处理PDF文件或在Photoshop等软件下打印大的图形图像文件时具有一定的速度优势,同时其在图形表现准确度色彩表现准确度和一些字库表现准确度方面也比PCL语言有优势,适合对图形和色彩准确度要求比较高的专业应用。

二、gdi是什么意思

GDI是图形设备接口的英文缩写。

主要任务是负责系统与绘图程序之间的信息交换,处理所有Windows程序的图形和图像输出。GDI的出现使程序员无需要关心硬件设备及设备正常驱动,就可以将应用程序的输出转化为硬件设备上的输出和构成,实现了程序开发者与硬件设备的隔离,大大方便了开发工作。

GDI具有如下特点:

1.不允许程序直接访问物理显示硬件,通过称为“设备环境”的抽象接口间接访问显示硬件。

2.程序需要与显示硬件(显示器、打印机等)进行通讯时,必须首先获得与特定窗口相关联的设备环境。

3.用户无需关心具体的物理设备类型。

4. Windows参考设备环境的数据结构完成数据的输出。

三、CDC 和 GDI到底是什么关系啊 把我搞晕了

Windows使用与设备无关的图形设备环境(DC:Device Context)进行显示。MFC基础类库定义了设备环境对象类----CDC类。

CDC与CGdiObject的关系

说道CDC类就不能不提一下GdiObject---图形对象类。在Windows应用程序中,设备环境与图形对象共同工作,协同完成绘图显示工作。就像画家绘画一样,设备环境好比是画家的画布,图形对象好比是画家的画笔。用画笔在画布上绘画,不同的画笔将画出不同的画来。选择合适的图形对象和绘图对象,才能按照要求完成绘图任务。

有关CDC类的继承

父类:从 CObject直接继承而来。继承了CObject类的各种特性,如动态创建等等。

子类:CClientDC-------代表操作窗口的DC,是比较常用的一个子类

CMetaFileDC------响应Meta File的DC,Meta File是一些GDI消息。

CPaintDC-------响应WM_PAINT消息的DC。

CWindowDC------代表整个屏幕的DC

CDC类的数据成员

数据成员只有两个:

HDC m_hDC: CDC对象使用的输出设备上下文

HDC m_hAttribDC: CDC对象使用的属性设备上下文

二者在CDC对象创建时指向相同的设备上下文。

中文寻星网络(广播卫星参数)百度转码(百度转码是什么意思)