映美首页 中国行业信息化商用外设专业提供商

打印机的控制命令
2003/7/10
映美信息科技有限公司
打印机产品部 总监
刘铁林

计算机能够完成数值计算、数据处理、图象设计、过程控制等工作都是在一种或多种计算机语言的指挥下进行的。同样,打印机各种部件的运行和动作,各种打印动作的实现、在各种介质上打印出图形和字符,也是由一套能为打印机所识别的语言(命令)来进行控制。通常将能完成上述功能的命令的集合成为打印机控制命令(Print Control Command)为了更好的熟知打印机控制命令,我们需先行了解打印机的数据处理流程。

一、打印机数据处理流程

二、打印机的控制命令
目前主流的打印机控制命令主要有以下三种:
  EPSON公司的ESC PK命令集
  HP公司的PCL命令集
  Adobe公司的PostScript(简称PS)命令集
ESC PK命令集是针式打印机(尤其是滚筒方式打印)领域事实上的工业标准;PCL命令集是中、低档激光打印机、喷墨机印机领域的工业标准;PS命令集则是高档排版、出版领域的应用标准。

1、名词解释

1)控制命令:对打印机进行各种处理和控制动作,并为打印机所识别的命令序列。
2)仿真;控制打印机按照某种控制命令进行工作,就称为这个控制命令的仿真。
3)驱动程序;转换文件成为某种特定控制命令描述的文档,并进行输出的程序。
注:驱动程序就是打印控制命令的形体表现,其本质就是按照某一控制命令的格式,将计算机的数据进行翻译和组织,并形成相应的字符和位图的序列送往打印机。

2、命令分类
打印机控制命令的种类可分为二大类:基本控制命令和扩充命令。

1) 基本命令(Basic Control Code)
基本命令其实就是ASCII码中规定的具有打印功能的控制命令,它的特点是均用一个ASCII码(一个字节)代表,使用比较方便。它的数值范围如下:
ASCII: 00H ~ 20H
2) 扩充命令(Extension Control Command)
基本命令仅提供标准和基本的控制功能。要实现字型大小、各种修饰功能、行与列间距控制、格式设定等较复杂的控制功能,就必须使用扩充命令。扩充命令一般由两个或两个以上的字节组成,其格式有如下几种形式:
Code CH
Code CH1[CH2]
Code CH1[CH2][Parm1 …Parm1]
Code CH1[CH2][Parm1 …Parm1]CH3
Code: 控制命令的引导代码
CH: 表示控制字符
Parm: 系列参数
例: 设定图象打印方式
ASCII码: ESC * m n1 n2
十进制码: 27 42 m n1 n2
十六进制码1B 2A m n1 n2
m: 图象方式
水平密度:60 DPI ~ 360DPI
垂直密度:60 DPI ~ 360DPI
每列点数:8点 ~ 48点
计算公式:列数=n1+n2*256
这里:“ESC“即为该控制命令的引导代码,而“*”和“m”为表示为图象命令的控制命令,“n1,n2”则为图象的系列参数。
3)命令格式类别
作为针式打印机的控制命令类别,有如下几种序列的表示方式:
* ESC序列
* FS序列
* SUB序列
* CEX 序列

3、命令系列

1)针式打印机
(1)ESC/P系列 (Epson)
(2)IBM系列 (IBM)
(3)OKI系列 (OKI)
(4)AR系列 (得实)
(5)PR系列 (南天)
2) 微型打印机
ESC/POS系列 (Epson)
Basic+ESC+GS+FS
3) 激光机
(1)PCL系列 (HP)
(2)ESC/PAGE (EPSON)
(3)Post Script (Adobe)
(4)GDI 方式

三、针式打印机控制命令分析

1、 ESC/P命令系列:
* 应用于滚筒方式打印
* Basic+ESC+FS
2、 AR命令系列:
* 应用于滚筒方式打印
* Basic+ESC+FS+SUB :ESC,FS与EPSON兼容,SUB为扩展中文打印
3、 IBM命令系列:
* 应用于滚筒方式打印
* Basic+ESC:ESC基本与EPSON兼容
4、 OKI命令系列:
* 应用于平推方式打印
* Basic+ESC+CEX:ESC为自定义系统,CEX为扩展中文打印
5、 PR命令系列:
* 应用于存折和证本的打印
* Basic+ESC+FS:ESC,FS为自定义系统(通用打印控制命令+存折控制+设备控制)

四、ESC/P控制命令分析
ESC/P 控制命令是EPSON公司制定的基本控制命令,它主要适应各种针式打印机和与之兼容的各种喷墨打印机,
并已成为事实上的滚筒针式打印机的应用标准。

1、 特征

1)唯一性:单一功能用单一控制码表示。
2)整体系统发展具有阶段性。
3)高版本完全包容低版本。
4)从一般打印机逐步推广到高端打印机,从针式推广到喷墨、激光打印机
5)与硬件的无关性,只考虑ESC/P版本即可。

2、结构
下图表示了ESC/P各个版本之间相互包含的关系。

3、命令功能分析
ESC/P 命令序列按其功能分类,可分为以下5个方面:

1)打印格式控制
2)英文打印命令
3)中文打印命令
4)图象打印命令
5)打印机控制命令

五、控制命令的输入方法
下面列出在各种程序语言中常用的输入控制命令的方法:

语言名称 函数或语句
BASIC CHR$(X)
FOXbase CHR(X)
C FPRINTF(prn,”%C,X)
PASCAL CHR(X)
FORTRAN CHAR(X)
汇编 MOV AL,X
INT 17H

打印机的控制命令也是根据市场发展和客户更高的需求,而与时俱进,不断发展的。就其技术发展可分为两个方面:控制命令本身的发展和命令应用方面的发展。

在控制命令本身的发展方面,EPSON的ESC PK命令集就是一个非常典型的事例,一方面在本身针打领域,由ESC P、ESC PK、ESC PK2 不断的提升控制和文字处理能力和水平。另一方面,又适时推出ESC Page 使其从针打领域向喷墨、激光打印机领域扩展。

在控制命令应用的发展方面,各生产厂家都在向:一种机型、多种控制命令仿真;的目标发展,以适应不同客户、不同应用的要求。这也是打印机控制命令在应用方面的发展方向。

对于打印机所实现的复杂控制功能而言,打印控制语言是基础。它直接关系到打印控制的实现和输出质量的优劣。因此增强对打印机控制命令的了解和掌握,无论是打印机的开发厂商还是用户,都是至关重要的。


版权所有 © 映美信息科技有限公司 www.jolimark.com