CN1199103C - 针打业务的仿真装置及其实现方法 - Google Patents
针打业务的仿真装置及其实现方法 Download PDFInfo
- Publication number
- CN1199103C CN1199103C CN 02121383 CN02121383A CN1199103C CN 1199103 C CN1199103 C CN 1199103C CN 02121383 CN02121383 CN 02121383 CN 02121383 A CN02121383 A CN 02121383A CN 1199103 C CN1199103 C CN 1199103C
- Authority
- CN
- China
- Prior art keywords
- font
- data
- character
- stylus printer
- printer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Record Information Processing For Printing (AREA)
Abstract
本发明公开了一种针打业务的仿真装置及其实现方法,该装置位于计算机和非针式打印机之间,至少包括用于存储仿真程序代码的程序存储器、存储标准矢量字库信息的字库存储器、存储数据的数据存储器、控制器、接收打印数据的主机端并口、发送打印数据的设备端并口,该方法包括来自计算机的打印数据通过主机端并口送至控制器,由控制器判断该打印数据是否是针打命令,如果不是则将数据直接发送给非针式打印机,进行原样打印;否则由控制器判断所接收的打印数据的针打命令类别,根据针打命令的类别分别转换为相应于非针式打印机的打印控制命令,再进行打印。本发明实现了用非针式打印机进行针打功能,具有兼容性和可扩展性。
Description
技术领域
本发明涉及打印机设备技术,具体地说,涉及一种针打业务的仿真装置及其实现方法。
背景技术
随着科技的发展,激光打印机已经成为人们主要的办公打印设备,传统的针式打印机正在逐步退出办公领域。然而在有些行业中仍然使用针式打印机作为主要的办公打印设备,例如一些财务、税务以及保险等行业,所使用的财务、报表等软件的打印功能大都是早期在DOS环境下针对针式打印开发的,无法应用先进的激光打印机系统输出,所以仍然使用传统的针式打印设备。尽管目前有些激光打印机的市场价格已经比针式打印机还低,但还是被迫使用过时的针式打印机开展业务。除非这些用户重新开发自己的财务、报表等软件,才能适应激光打印机的应用。
造成这种状况的主要原因是非针式打印机采用不同于针式打印机的打印控制语言,例如激光打印采用PCL(PCL:printer control language)打印控制语言,该控制语言是惠普(HP)公司制定的激光打印机打印控制语言,目前已经成为激光打印机行业的标准;而针式打印通常采用ESC/P命令,该命令是Epson公司推出的针式打印机控制语言的名称。正是由于激光打印机和针式打印机所使用的打印控制语言不同,使得激光打印机无法实现针打打印作业的功能。
发明内容
本发明的目的在于提供一种针打业务的仿真装置及其实现方法,能够在无需改动现有针式打印机应用软件的前提下,用非针式打印机来取代传统的针式打印设备,使得针打作业可以在普通的非针式打印机上实现。
本发明所提供的针打业务的仿真装置是这样实现的:
一种针打业务的仿真装置,位于计算机和非针式打印机之间,该装置至少包括用于存储仿真程序代码的程序存储器、存储标准矢量字库信息的字库存储器、数据存储器、控制器、与计算机打印接口相连并接收计算机发送的打印数据的主机端并口、与非针式打印机相连并向非针式打印机发送打印数据的设备端并口,其中,所述主机端并口将接收的打印数据送至控制器,控制器根据字库存储器中的标准矢量字库信息将打印数据中的字符生成字符位图信息后,通过所述设备端并口送至非针式打印机,所述数据存储器、字库存储器、程序存储器分别与控制器相连。
所述的主机端并口为符合IEEE1284协议标准的并口,设备端并口为符合IEEE1284协议标准的并口。
所述字库存储器为掩摸只读存储器,所述程序存储器为闪速只读存储器,所述数据存储器为动态随机存储器。
所述非针式打印机为激光打印机,或者喷墨打印机。
本发明提供的一种应用针打业务的仿真装置实现针打业务的方法是这样实现的:
一种应用针打业务的仿真装置实现针打业务的方法,它包括以下步骤:
A.接收来自计算机的打印数据;
B.判断该打印数据是否要求通过针打方式打印,如果不是,则将打印数据直接发送给非针式打印机进行打印;否则执行步骤C;
C.判断所接收的打印数据对应的针打命令类别,如果是非字体控制命令,则转换为相应于非针式打印机的打印控制命令,如果是可打印字符,则根据存储于字库存储器中的标准矢量字库的矢量信息生成位图数据,发送至非针式打印机进行打印。
其中,步骤C所述的非字体控制命令为页面控制命令,或行控制命令,或字距控制命令。
步骤C所述根据存储于字库存储器中的标准矢量字库的矢量信息生成位图数据的步骤进一步包括:
C01)根据当前字体特征在预先设置的字体链表中查找匹配字体,若字体链表中无该字体的匹配字体,则将当前字体特征添加至字体链表中;
C02)根据当前字体特征的区码在字体链表中的区码链表查找匹配区码,若无该字体的匹配区码,则将当前字体的区码添加至区码链表中,并发送字体的头部信息;
C03)根据位码查看字符的发送标志判断字符位图数据是否已发送至非针式打印机,若字符位图数据未发送至非针式打印机,则根据标准矢量字库的矢量信息,生成位图数据,再执行步骤C04);否则直接执行步骤C04);
C04)根据下标、倍高发送坐标调整命令,发送字符打印命令进行打印作业后发送坐标恢复命令。
上述步骤C03)所述根据标准矢量字库的矢量信息,生成位图数据的步骤进一步包括先判断当前字符是否是汉字字符,如果是则将汉字字符国际码转换为区位码,否则根据英文或数字字体样式换算区位码;然后根据字体样式从标准矢量字库读取矢量字模,根据字体大小缩放矢量字模,根据字体倾斜与否倾斜矢量字模,根据矢量字模生成位图字模。
并且,步骤C03)所述的发送标志存放于以位码为变量的发送标志数组中。
本发明通过在计算机和非针式打印机之间的仿真装置和程序控制,将从计算机主机接收到的针打命令转换成相应于非针式打印机的打印控制命令,并通过装置中的并口发送给非针式打印机,实现了用非针式打印机进行针打功能,例如,可以在激光打印机上实现针打作业,用户无需改动现行的针打驱动软件以及激光打印机设备,只要将该装置串接在PC主机和激光打印机之间即可使用,又由于该仿真装置相对独立,并提供标准的非针式打印机和PC主机的并口连接,具有兼容性;该装置可自动识别打印作业的属性,用户不必关心自己目前是使用针打作业还是其他类型的作业,不必进行连接切换,使非针式打印机既可完成针打作业,也可直接完成非针打作业,具有独立性和便捷;通过该装置及其实现方法可接收任何打印作业数据,可以根据特殊的需求将数据进行特殊的处理后再进行打印或其他操作,如加密、转换等操作具有扩展性。
附图说明
图1为针打业务仿真装置的整体示意图;
图2为针打业务仿真装置的硬件原理框图;
图3为以激光打印机仿真针打业务为实施例的整体实现流程图;
图4为图3中字体控制环节流程图;
图5为字体链表;
图6为从字库生成位图数据的流程图。
具体实施方式
为使本发明的目的、技术方案、及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
参见图1所示,图1为针打业务仿真装置的整体示意图。仿真装置为独立于非针式打印机和PC主机的嵌入式系统,提供主机端并口和设备端并口,并分别与PC主机和非针式打印机连接。PC主机发送的打印作业通过主机端并口被仿真装置接收,仿真装置经过分析判断该作业是否为针打作业,如果是针打作业,则经过特定的处理,将针打命令序列翻译成相应于非针式打印机的打印控制语言序列,再通过设备端并口发送给非针式打印机。如果仿真装置经过分析判断该作业不是针打作业,则将接收到的打印数据直接通过设备端并口发送给非针式打印机,由非针式打印机来处理该数据。上述非针式打印机可以为激光打印机,或者喷墨打印机等
参见图2所示,图2为针打业务仿真装置的硬件原理框图。仿真装置硬件包括控制器(MCU)、用于存储仿真程序代码的程序存储器、用于存储程序数据的数据存储器、用于存储矢量字库信息的字库存储器以及直接用于和PC主机通信的主机端并口和用于将处理过的数据直接发送给非针式打印机的设备端并口,其中,字库存储器存储的矢量字库信息是标准字库,用于将针打作业中字符信息的内码还原成字符的点阵位图,主机端并口为符合IEEE1284协议的标准并口,直接用于和PC主机通信并接收打印数据,与主机的并口相同,设备端并口是符合IEEE1284协议的标准并口,与非针式打印机的并口类似。上述程序存储器可以为闪速只读(FlashROM)存储器,数据存储器可以为动态随机存储器(DRAM),字库存储器可以为掩摸只读存储器(MaskROM),以上硬件可采用专用打印机处理器实现,例如Motorola公司的68322处理器。
参见图3所示,图3为以激光打印机仿真针打业务为实施例的整体实现流程图。仿真装置上电后,仿真程序开始处于等待接收数据的状态,接收到数据后,判断是否是ESC/P针打命令序列,如果不是ESC/P针打命令序列,则根据激光打印PCL命令的控制字符发送PCL选择字体命令,然后发送字符进行原样打印,如果是ESC/P针打命令序列,则判断ESC/P针打命令能否转换成PCL命令,若不能转换为PCL命令,则将命令状态的改变记录下来,例如,将字体的宽、高等信息的状态改变记录,打印字符时根据命令状态发送PCL命令;若ESC/P命令可以转换PCL命令,则按照PCL相关命令类别分别处理,对于页面控制、字距行距控制等非字体控制命令的ESC/P命令,则将其转换为相应的PCL命令,例如,Esc/P的1/6英寸行距命令为“Esc2”,对应于PCL的“Esc&16D”;对于字体控制的ESC/P命令,即可打印字符命令,则根据字符的大小和效果等字体特征从存储于字库存储器中的标准矢量字库信息读取矢量信息以生成特定的位图数据,然后通过PCL的发送命令将软字体发送给激光打印机,再进行打印。
参见图4、图5所示,图4为上述字体控制环节流程图,图5为字体链表,该表横向为字体特征链表,纵向为字体区码链表。
步骤401,根据主机ESC/P命令中当前字体特征在字体链表中查找与之匹配的字体特征,步骤402,判断是否找到匹配的字体特征,如果未找到则执行步骤403,将当前字体特征添加到字体链接表中,然后执行步骤404;如果已找到则执行步骤404,根据当前字体区码在字体的区码链表中查找匹配区码;
执行步骤405,判断是否找到匹配区码,若未找到匹配区码,则执行步骤406,将当前字体区码添加到字体的区码链表中,执行步骤407,发送字体头部信息至激光打印机,头部信息包括字体的宽、高等信息,然后执行步骤408;若已找到匹配区码,则执行步骤408,根据当前字体的位码查看以字符的位码为变量的发送标志数组,该发送标志数组存放了将字符发送至激光打印机的发送标志信息;
执行步骤409,判断字符位图数据是否已经发送,如果未发送,则执行步骤410,从标准矢量字库读取矢量信息以生成位图数据,然后执行步骤411,向激光打印机发送字符位图数据,再执行步骤412;如果已发送了字符位图数据,则执行步骤412,根据下标、倍高发送坐标调整命令;
执行步骤413和414,向激光打印机发送字符打印命令,激光打印机根据字体编号和位图数据进行打印作业,然后根据下标、倍高发送坐标恢复命令,完成字体控制流程。
参见图6所示,图6为上述字体控制流程中的字库生成位图的流程图。步骤601,判断当前字符是否为汉字字符,如果是则执行步骤602,将当前汉字字符的国际码转换为区位码,即将当前汉字字符的国际码减去160可得到其区位码,否则执行步骤607根据英文、数字字体样式换算为区位码;执行步骤603,根据字体样式从标准矢量字库中读取矢量字模;步骤604,根据字体大小缩放矢量字模;步骤605,根据字体倾斜与否倾斜矢量字模,最后执行步骤606,根据上述的矢量字模生成位图字模,完成标准矢量字库中的矢量信息到字符位图数据的转换。上述字体样式中,汉字有宋体、楷体、黑体、仿宋体四种字体样式,英文字体有14种字体样式。
通过上述仿真装置的硬件结构和程序处理,使得该仿真装置能够接收任何打印作业数据。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1、一种针打业务的仿真装置,位于计算机和非针式打印机之间,其特征在于,该装置至少包括用于存储仿真程序代码的程序存储器、存储标准矢量字库信息的字库存储器、数据存储器、控制器、与计算机打印接口相连并接收计算机发送的打印数据的主机端并口、与非针式打印机相连并向非针式打印机发送打印数据的设备端并口,其中,所述主机端并口将接收的打印数据送至控制器,控制器根据字库存储器中的标准矢量字库信息将打印数据中的字符生成字符位图数据后,通过所述设备端并口送至非针式打印机,所述数据存储器、字库存储器、程序存储器分别与控制器相连。
2、根据权利要求1所述的仿真装置,其特征在于,所述的主机端并口为符合IEEE1284协议标准的并口,设备端并口为符合IEEE1284协议标准的并口。
3、根据权利要求1所述的仿真装置,其特征在于,所述字库存储器为掩摸只读存储器,所述程序存储器为闪速只读存储器,所述数据存储器为动态随机存储器。
4、根据权利要求1所述的仿真装置,其特征在于,所述非针式打印机为激光打印机,或者喷墨打印机。
5、一种应用权利要求1所述的装置实现针打业务的方法,其特征在于,该方法至少包括:
A.接收来自计算机的打印数据;
B.判断该打印数据是否要求通过针打方式打印,如果不是,则将打印数据直接发送给非针式打印机进行打印;否则执行步骤C;
C.判断所接收的打印数据对应的针打命令类别,如果是非字体控制命令,则转换为相应于非针式打印机的打印控制命令,如果是可打印字符,则根据存储于字库存储器中的标准矢量字库的矢量信息生成位图数据,发送至非针式打印机进行打印。
6、根据权利要求5所述的实现针打业务的方法,其特征在于,步骤C所述的非字体控制命令为页面控制命令,或行控制命令,或字距控制命令。
7、根据权利要求5所述的实现针打业务的方法,其特征在于,步骤C所述根据存储于字库存储器中的标准矢量字库的矢量信息生成位图数据的步骤进一步包括:
C01)根据当前字体特征在预先设置的字体链表中查找匹配字体,若字体链表中无该字体的匹配字体,则将当前字体特征添加至字体链表中;
C02)根据当前字体特征的区码在字体链表中的区码链表查找匹配区码,若无该字体的匹配区码,则将当前字体的区码添加至区码链表中,并发送字体的头部信息;
C03)根据位码查看字符的发送标志判断字符位图数据是否已发送至非针式打印机,若字符位图数据未发送至非针式打印机,则根据标准矢量字库的矢量信息生成位图数据,再执行步骤C04);否则直接执行步骤C04);
C04)根据下标、倍高发送坐标调整命令,发送字符打印命令进行打印作业后发送坐标恢复命令。
8、根据权利要求7所述的实现针打业务的方法,其特征在于,步骤C03)所述根据标准矢量字库的矢量信息生成位图数据的步骤进一步包括先判断当前字符是否是汉字字符,如果是则将汉字字符国际码转换为区位码,否则根据英文或数字字体样式换算区位码;然后根据字体样式从标准矢量字库读取矢量字模,根据字体大小缩放矢量字模,根据字体倾斜与否倾斜矢量字模,根据矢量字模生成位图字模。
9、根据权利要求7所述的实现针打业务的方法,其特征在于,步骤C03)所述的发送标志存放于以位码为变量的发送标志数组中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 02121383 CN1199103C (zh) | 2002-06-18 | 2002-06-18 | 针打业务的仿真装置及其实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 02121383 CN1199103C (zh) | 2002-06-18 | 2002-06-18 | 针打业务的仿真装置及其实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1464389A CN1464389A (zh) | 2003-12-31 |
CN1199103C true CN1199103C (zh) | 2005-04-27 |
Family
ID=29742952
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 02121383 Expired - Fee Related CN1199103C (zh) | 2002-06-18 | 2002-06-18 | 针打业务的仿真装置及其实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1199103C (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101794566B (zh) * | 2010-01-08 | 2012-08-29 | 青岛海信移动通信技术股份有限公司 | 移动终端中确定待显示字符的字模数据的方法及相关装置 |
CN102848738B (zh) * | 2012-09-19 | 2015-02-04 | 武汉钢铁(集团)公司 | 一种用开放平台对大型主机平台的数据进行打印的方法 |
CN109656489A (zh) * | 2018-10-31 | 2019-04-19 | 许继集团有限公司 | 一种嵌入式继电保护装置及其网络打印方法 |
CN111193800A (zh) * | 2019-12-31 | 2020-05-22 | 厦门汉印电子技术有限公司 | 一种基于服务器解析的指令交互方法、装置、服务器及系统 |
CN115366545B (zh) * | 2022-10-24 | 2023-02-28 | 恒银金融科技股份有限公司 | 用于凭条打印机的字符打印方法和系统 |
-
2002
- 2002-06-18 CN CN 02121383 patent/CN1199103C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1464389A (zh) | 2003-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7471401B2 (en) | Information processing apparatus, printing processing method, and program therefor | |
EP0415861B1 (en) | Printer initialization system | |
US4870611A (en) | Apparatus and method for system printing mode control | |
US5606649A (en) | Method of encoding a document with text characters, and method of sending a document with text characters from a transmitting computer system to a receiving computer system | |
JPH076010A (ja) | 印刷システムとプリント生成方法 | |
US6600840B1 (en) | Image format conversion such as photometric, rotation, cropping, padding, scaling, dithering, bit padding, grayscale and color transformation, encoding and decoding using a plurality of filters | |
JPH0749754A (ja) | ページ記述言語決定方法 | |
JPH08115178A (ja) | ページ記述言語における可変データフイールド | |
CN107256134B (zh) | 将pos终端虚拟为计算机打印机的方法和装置、pos终端 | |
CN1192901C (zh) | 信息处理装置、信息处理系统、控制方法及存储媒体 | |
CN1199103C (zh) | 针打业务的仿真装置及其实现方法 | |
CN1344991A (zh) | 信息处理设备、打印系统、以及命令生成方法 | |
US7589861B2 (en) | Image forming apparatus and printing system | |
JPH04128068A (ja) | ページ記述言語処理装置およびページ記述言語処理印刷装置 | |
EP0146714B1 (en) | Method and system for creating visual displays of data from an input data set | |
CA2237635A1 (en) | Aligning machine-readable codes to printer pixels | |
JP5215012B2 (ja) | 効率的なプリントジョブ圧縮のための方法、システム、コンピュータで読み取り可能な媒体及び装置 | |
JP2008305407A (ja) | 処理ステージを用いた電子ドキュメント処理システムおよび方法 | |
US7196812B2 (en) | Information processing apparatus and control code generation method | |
CN100397325C (zh) | 直接打印方法及设备 | |
EP0145888A2 (en) | Method and apparatus for creating visual displays of data from an input data set | |
JPH09190313A (ja) | プリンタ制御装置及び方法 | |
JPH08161467A (ja) | 電子ファイル装置並びに電子ファイルシステム | |
US20070296996A1 (en) | Printing apparatus | |
JPH0442193B2 (zh) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20050427 Termination date: 20210618 |
|
CF01 | Termination of patent right due to non-payment of annual fee |