CN101599006A - 打印系统和打印机 - Google Patents
打印系统和打印机 Download PDFInfo
- Publication number
- CN101599006A CN101599006A CNA2009102033085A CN200910203308A CN101599006A CN 101599006 A CN101599006 A CN 101599006A CN A2009102033085 A CNA2009102033085 A CN A2009102033085A CN 200910203308 A CN200910203308 A CN 200910203308A CN 101599006 A CN101599006 A CN 101599006A
- Authority
- CN
- China
- Prior art keywords
- printer
- information
- type information
- task
- customizing messages
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1801—Input data handling means
- G06K15/1803—Receiving particular commands
- G06K15/1806—Receiving job control commands
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1801—Input data handling means
- G06K15/1803—Receiving particular commands
- G06K15/1806—Receiving job control commands
- G06K15/1809—Receiving job control commands relating to the printing process
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1297—Printer code translation, conversion, emulation, compression; Configuration of printer parameters
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
- Record Information Processing For Printing (AREA)
Abstract
本发明的名称为打印系统和打印机。一种打印系统,包括其中特定信息设置成将打印机指定为有资格打印机的打印机以及用于向打印机传送特定应用程序所创建的打印信息的主控装置。特定应用程序具有将信息加入打印信息的信息添加单元。打印机包括:判定单元,判定加入打印信息的信息是否匹配打印机中存储的特定信息;以及打印处理单元,如果情况是这样时打印该打印信息。这种布置使有资格电子表单数据能够仅由有资格打印机来打印,以及使有资格打印机能够仅打印有资格电子表单数据,而无需对现有打印机程序或电子表单数据规范的重大修改。
Description
技术领域
本发明涉及使特定类型的应用程序所创建的特定数据能够由特定类型的打印机来打印、同时防止其它应用程序所创建的特定数据由该特定类型的打印机来打印并且防止该特定类型的应用程序所创建的特定数据由其它类型的打印机来打印的打印系统和打印机。
背景技术
使印刷介质、如申请表和病历上输入的手写信息数字化的数字笔是市场有售的。例如,瑞典的Anoto AB研制的特殊笔具有安装在其笔尖附近的微型相机,它检测打印在纸张上的专有点模式,由此在笔书写文本或图表或者做标记时跟踪笔的移动。跟踪数据存储在笔中并且传送到适当的信息处理设备,信息处理设备将书写信息转换成电子文件或数据库中的有用形式,如授予Pettersson等人的美国专利No.6548768中所公开。
例如在Adobe Acrobat软件系统中起作用的Anoto表单设计工具(Anoto Form Design Tool)等工具用于将专有点模式结合到打印数据中。Anoto表单设计工具从便携文档格式(PDF)的文件读取原始文档数据,添加点模式,以及生成作为Anoto电子表单数据的PostScript文件。然后将PostScript文件发送给具有Anoto-资格鉴定的PostScript解释器的打印机,Anoto-资格鉴定的PostScript解释器打印PostScript文件,以便创建能与Anoto数字笔配合使用的纸张表单。
但是,Anoto表单设计工具生成的Anoto电子表单数据构成普通PostScript文件,它将甚至通过具有不是Anoto-资格鉴定的PostScript解释器的打印机自动印出。在许多情况下,结果是无法由数字笔识别的打印表单。
发明内容
本发明的一个目的是提供能够当且仅当数据从有资格应用程序输出并且由有资格打印机接收时打印Anoto电子表单数据而无需对现有打印机程序或Anoto电子表单数据规范进行重大修改的打印机和打印系统。
本发明提供包括打印机和主控装置的新颖的打印系统。特定信息设置在打印机中作为资格指示(qualification designation)。主控装置将特定应用程序所创建的打印信息发送给打印机。特定应用程序具有信息添加单元,用于将对应于特定信息的增加信息附加到打印信息。
打印机包括判定单元和打印处理单元。判定单元判定从主控装置所传送的打印信息是否包含增加信息以及增加信息是否对应于打印机中设置的特定信息。如果判定单元判定打印信息包含增加信息以及增加信息对应于特定信息,则打印处理单元打印该打印信息,但是,如果判定单元判定打印信息没有包含增加信息,或者如果判定单元判定打印信息包含增加信息但增加信息没有对应于特定信息,则丢弃该打印信息。
本发明还提供包括一种新颖打印机,它包括:上述判定单元和打印处理单元;接受单元,用于接受特定应用程序所创建的特定信息和/或打印信息的输入;存储单元,用于存储特定信息;以及特定信息设置单元,用于当经由接受单元所接受的信息是打印信息时将存储单元中存储的特定信息设置为资格指示。
附图说明
附图包括:
图1是示意示出本发明的第一实施例和第二实施例中的打印系统的结构的框图;
图2示出从图1的主控计算机A传送给打印机的示范PostScript文件;
图3示出从图1的主控计算机B传送给打印机的示范PostScript文件;
图4是示出图1的任务类型分析处理器的操作的流程图;
图5是示出任务补丁注册处理器的操作的流程图;
图6是示出任务补丁读出处理器的操作的流程图;
图7是示出由任务补丁读出处理器执行PostScript任务的流程图;
图8和图9是示出由编辑处理器执行PostScript任务的流程图;
图10是本发明的第二实施例中从主控计算机A发送到打印机的示范PostScript文件;
图11是第二实施例中从主控计算机B发送到打印机的示范PostScript文件;
图12是示出第二实施例中由任务补丁读出处理器执行PostScript任务的流程图;
图13是示出第二实施例中由编辑处理器执行PostScript任务的流程图;以及
图14是示出使用本发明的另一个示范打印系统的框图。
具体实施方式
现在参照附图来描述本发明的实施例,附图中,相似元件通过相似参考标号来表示。
第一实施例
参照图1,第一实施例中的打印系统10包括一对主控计算机(个人计算机:PC)A、B和打印机100。打印机100从主控计算机A接收将打印机100指定为有资格打印机的给定信息(以下称作任务补丁),从主控计算机B接收作为打印信息的Anoto电子表单数据,以及根据Anoto电子表单数据在打印介质上打印图像。
例如,主控计算机A通过网络与打印机100连接,并且通过发送任务补丁将打印机100指定为有资格打印机。
例如,主控计算机B也通过网络与打印机100连接,并且可通过发送由特定Anoto电子表单创建系统中的Anoto电子表单创建应用程序所创建的Anoto电子表单数据向打印机100发送打印信息。
打印机100包括控制器单元101和引擎单元113。控制器单元101是打印处理单元,它分析从主控计算机A发送的任务补丁以及从主控计算机B发送的Anoto电子表单数据或其它数据,并且生成打印图像数据。引擎单元113根据打印图像数据在打印介质上打印图像。
控制器单元101包括接收处理器102、数据接收缓冲器103、编辑处理器104、显示列表缓冲器105、任务类型分析处理器106、任务补丁注册处理器107、任务补丁缓冲器108、任务补丁读出处理器109、光栅化处理器(rasterizing processor)110、打印图像缓冲器111和引擎控制处理器112。
接收处理器102是接受单元,它接受从主控计算机A发送的任务补丁以及从主控计算机B发送的Anoto电子表单数据或其它数据。接收处理器102使数据接收缓冲器103存储所接收数据,并且向编辑处理器104发出命令以便分析所接收数据。
数据接收缓冲器103是用于存储接收处理器102所接收的数据的存储单元。
在接收到来自接收处理器102的分析命令时,编辑处理器104读取数据接收缓冲器103中存储的数据,分析该数据,以及使显示列表缓冲器105存储分析结果。编辑处理器104还向光栅化处理器110发出命令以便生成打印图像数据。
显示列表缓冲器105是用于存储编辑处理器104所执行的数据分析结果的存储单元。
任务类型分析处理器106是判定单元,它在编辑处理器104分析数据时确定数据接收缓冲器103中存储的该数据的类型。任务类型分析处理器106确定数据是否与任务补丁的注册相关、即是否与将打印机100指定为有资格打印机相关,或者数据是否与PostScript任务的执行(例如根据Anoto电子表单数据在打印介质上打印图像)相关。
当任务类型分析处理器106确定所接收数据与任务补丁的注册相关时,任务补丁注册处理器107使任务补丁缓冲器108存储该任务补丁。
任务补丁缓冲器108是存储单元,它按照任务补丁注册处理器107所指示来存储和注册任务补丁。
当任务类型分析处理器106确定所接收数据与PostScript任务的执行有关时,任务补丁读出处理器109在执行数据接收缓冲器103中存储的PostScript任务之前读取并运行任务补丁缓冲器108中存储的任务补丁,由此充当特定信息设置单元和判定单元。
在接收到来自编辑处理器104的扩充开始命令时,光栅化处理器110从显示列表缓冲器105读取由任务类型分析处理器106所进行的数据分析的结果,生成打印图像数据,以及使打印图像缓冲器111存储打印图像数据。光栅化处理器110还向引擎控制处理器112给出命令以便根据打印图像数据来打印图像。
打印图像缓冲器111是用于存储光栅化处理器110所生成的打印图像数据的存储单元。
在接收到来自光栅化处理器110的打印命令之后,引擎控制处理器112从打印图像缓冲器111读取打印图像数据,以及使引擎单元113根据打印图像数据来打印图像。
例如,引擎单元113是电子照相打印引擎,它在引擎控制处理器112的控制下根据打印图像数据在打印介质上打印图像。
控制器单元101包括程序集合,程序集合可存储在打印机100的例如随机访问存储器(RAM)等易失性存储器、例如只读存储器(ROM)等非易失性存储器、例如闪速存储器等可改写存储器或者例如硬盘等磁存储介质中。当这些程序由打印机100的中央处理器(CPU,未示出)运行时执行控制器单元101的功能。
除了上述元件之外,打印机100还具有其它众所周知的设备,包括诸如具有例如用于显示打印机100的状态的屏幕的液晶显示器(LCD)等显示设备以及具有诸如用户例如可在其上输入命令的触摸屏等输入部件的人机接口。
按照上述方式构造的打印系统10使从特定系统中的应用程序所输出的Anoto电子表单数据能够仅在由有资格打印机接收时才被打印,而无需对现有打印机程序或Anoto电子表单数据规范的重大修改。
现在描述包括上述元件的打印系统10的操作。在以下描述中,打印机100首先从主控计算机A接收作为任务补丁的例如图2所示的PostScript文件20,然后从主控计算机B接收作为Anoto电子表单数据的例如图3所示的PostScript文件30。
当接收处理器102接收任何PostScript文件时,它首先将所接收PostScript文件存储在数据接收缓冲器103中,并且向编辑处理器104发出命令以便分析该文件。
在接收到来自接收处理器102的分析命令时,编辑处理器104读取数据接收缓冲器103中存储的PostScript文件,并且向任务类型分析处理器106发出命令以便确定该PostScript文件是要用于进行打印机100中的初始设置还是要作为PostScript任务来运行。
编辑处理器104运行图4的流程图所示的分析过程。在步骤S41中,编辑处理器104检查数据接收缓冲器103中存储的PostScript文件是否从图2所示的打印机任务语言(PJL)命令@PJL RESOURCEWRITE开始。图2的PostScript文件20的第一行中的初始%-12345X是通用出口语言(Universal Exit Language)字符串;编辑处理器104开始从这个字符串之后的字符读取文件。
如果PostScript文件从@PJL RESOURCEWRITE开始(步骤S41中的“是”),则编辑处理器104判定数据接收缓冲器103中存储的PostScript文件是从主控计算机A发送来将打印机100指定为有资格打印机的任务补丁。编辑处理器104向任务补丁注册处理器107发出命令,以便注册数据接收缓冲器103中存储的PostScript文件。通过执行这个命令,任务补丁注册处理器107注册该任务补丁(步骤S42)。
将参照图5的流程图来描述任务补丁注册过程。通过读取数据接收缓冲器103中存储的PostScript文件20,任务补丁注册处理器107获得分配给任务补丁的存储位置和文件名(步骤S51)。在图2所示的PostScript文件20中,LOCATION=″PsGeneralAccess DriverProc″指明任务补丁将以文件名DriverProc存储在任务补丁缓冲器108中的PsGeneralAccess区域中。
任务补丁注册处理器107创建具有在步骤S51中得到的文件名的文件,并且打开该文件,从而允许写访问(步骤S52)。
然后,任务补丁注册处理器107获得要注册为任务补丁的PostScript文件20的数据量(步骤S53)。图2中,PostScript文件20的数据量为80390个字节,如SIZE=80390所示。整个PostScript文件20将存储在任务补丁缓冲器108中。
步骤S54至S56形成循环,其中任务补丁注册处理器107反复地将数据写入任务补丁缓冲器108,并且递减步骤S53中得到的数据量。在步骤S54,任务补丁注册处理器107判定递减的数据量是否已经达到零。如果不是(步骤S54中的“否”),则在步骤S55中,任务补丁注册处理器107从数据接收缓冲器103中存储的文件读取一个数据字节,并且将该字节写入在步骤S52中在任务补丁缓冲器108中打开的文件;在步骤S56中,任务补丁注册处理器107将步骤S53中得到的数据量递减一字节;然后该过程返回到S54。
当步骤S53中得到的数据量递减为零时(步骤S54中的“是”),则任务补丁注册处理器107关闭该文件(步骤S57)。这时已经注册任务补丁。
如果数据接收缓冲器103中存储的PostScript文件不是从@PJLRESOURCEWRITE开始(图4的步骤S41中的“否”),则编辑处理器104认为数据接收缓冲器103中存储的PostScript文件是PostScript任务,该PostScript任务被发送以便运行从而打印例如Anoto电子表单等。在这种情况下,编辑处理器104向任务补丁读出处理器109发出命令以便读取任务补丁。在从编辑处理器104接收到任务补丁读取命令时,任务补丁读出处理器109从任务补丁缓冲器108读取任务补丁(步骤S43),并且运行本文所述的处理(步骤S44)。
将参照图6的流程图来描述任务补丁读取过程。在从编辑处理器104接收到任务补丁读取命令时,任务补丁读出处理器109检查任务补丁缓冲器108是否保存了命名为DriverProc的文件。如果任务补丁DriverProc已经如图5所示被注册并且存储在任务补丁缓冲器108中(步骤S61中的“是”),则任务补丁读出处理器109读取任务补丁(步骤S62),并且在数据接收缓冲器103中存储的PostScript文件30被运行之前将该任务补丁作为PostScript任务来运行(步骤S63)。
将参照图7的流程图来描述由任务补丁读出处理器109运行图2所示的PostScript任务。图7中的第一步骤S71对应于图2的行(1),其中PostScript操作符def将/C5900_ANOTO定义成值“真(True)”的关键字对象(key object),并且将这个对象的访问权限制为仅执行访问。这个定义宣告打印机是经过资格鉴定的。图7中的第二步骤S72对应于图2中的行(2)和后续行,其中PostScript解释器的标准字体定义操作符/definefont由新定义操作符取代,该新定义操作符定义等待执行的PostScript文件30将由编辑处理器104根据PostScript文件30是否包含有资格Anoto电子表单数据来运行的方式,以便防止打印无资格Anoto电子表单数据。
当任务补丁读出处理器109完成运行作为任务补丁的PostScript文件20时,编辑处理器104执行数据接收缓冲器103中保存的PostScript文件30的处理。将参照图8和图9的流程图来描述图3所示的PostScript任务的执行。
图8中的第一步骤S81对应于图3中的行(3),它将值C5900_ANOTO分配给PostScript解释器的用户词典中的关键字JobName。这种分配是关于PostScript文件30已经由特定Anoto电子表单创建系统中的Anoto电子表单创建应用程序创建的宣告。
图8中的下一个步骤S82对应于图3中的行(4)和后续行,其确定打印机是否经过资格鉴定,即,栈是否包含/Proset resource,在该/Prosetresource中存在其中宣告了关键字/C5900_ANOTO的/DriverOps词典,以及关键字/C5900_ANOTO的值是否为“真”。如果关键字/C5900_ANOTO存在,并且其值为“真”(步骤S82中的“是”),则图8的过程结束,以及专有Anoto点模式由PostScript任务来定义,下面进行说明。如果关键字/C5900_ANOTO不存在,或者如果它的值不为“真”(步骤S82中的“否”),则特定Anoto电子表单创建系统中的Anoto电子表单创建应用程序所创建的Anoto电子表单数据已经发送给具有尚未经过特定Anoto电子表单创建系统资格鉴定为能够打印Anoto电子表单数据的PostScript解释器的打印机。在这种情况下,PostScript解释器的标准打印操作符/showpage由页面删除操作符/erasepage取代(步骤S83)。因此,如果将特定Anoto电子表单创建系统所创建的Anoto-资格鉴定的电子表单数据发送给具有尚未经过Anoto电子表单创建系统资格鉴定的PostScript解释器的打印机,则Anoto电子表单数据不会被打印。
但是,第一实施例中的打印机100在图2中已经由补丁任务资格鉴定,其中def操作符将关键字/C5900_ANOTO定义为“真”,因此图8中的步骤S83没有运行。每当特定Anoto电子表单创建系统中的应用程序所创建的Anoto电子表单数据在打印机100已经注册将打印机的PostScript解释器指定为经过特定Anoto电子表单创建系统资格鉴定的任务补丁(PostScript文件20)之后被发送给图1的打印机100,则图8中的步骤S83没有运行。
在完成图8所示的过程之后,图3中的PostScript任务的执行继续进行,以及编辑处理器104定义专有点模式。专有点模式由PostScript语言中的字体定义来定义。图3中,定义通过行(5)中的语句/AnotoFontexch definefont pop来运行。
编辑处理器104运行PostScript任务,如图9的流程图所示。图3的行(5)中的操作符/definefont在图7的步骤S72中由图2的行(2)中的新定义操作符取代,因此在下面所述的处理中,运行新定义的操作符/definefont。
在步骤S91中,编辑处理器104确定通过/definefont操作符所定义的PostScript字体的名称是否为/AnotoFont。如果所定义字体名称为/AnotoFont(步骤S91),则PostScript任务处理进入步骤S92,其中编辑处理器104还确定PostScript解释器的用户词典中的关键字/JobName的值是否为C5900_ANOTO(步骤S92)。
如果关键字/JobName没有宣告,或者如果它的值不是设置为C5900_ANOTO(步骤S92中的“否”),则编辑处理器104判定Anoto电子表单数据由不同于特定Anoto电子表单创建系统的某个系统中的Anoto电子表单创建应用程序来创建,并且采用页面删除操作符/erasepage来取代PostScript解释器的标准打印操作符/showpage(步骤S93)。因此,即使将数据发送给具有经过特定Anoto电子表单创建系统资格鉴定的PostScript解释器的打印机,无资格系统中的Anoto电子表单创建应用程序所创建的Anoto电子表单数据不会由这个打印机来打印。
如果关键字/JobName被宣告以及如果它的值为C5900_ANOTO(步骤S92中的“是”),则编辑处理器104使显示列表缓冲器105存储分析结果,并且向光栅化处理器110发出命令以便生成打印图像数据。
在接收到来自编辑处理器104的这个命令时,光栅化处理器110从显示列表缓冲器105读取由编辑处理器104所执行的分析的结果,生成打印图像数据,以及使打印图像缓冲器111存储打印图像数据。光栅化处理器110向引擎控制处理器112发出命令以便根据打印图像数据来打印图像。
在接收到来自光栅化处理器110的打印命令之后,引擎控制处理器112从打印图像缓冲器111读取打印图像数据,以及使引擎单元113根据打印图像数据来打印图像。
在引擎控制处理器112的控制下,引擎单元113执行众所周知的电子照相打印过程,例如以便根据打印图像数据在打印介质上打印图像。
在第一实施例中,当打印机接收到特定Anoto电子表单创建系统中的应用程序所创建的Anoto电子表单数据时,该数据包含检查打印机是否经过特定Anoto电子表单创建系统资格鉴定的PostScript代码。如果打印机经过资格鉴定,则它将打印该数据。但是,如果打印机没有经过资格鉴定,则操作符/erasepage将取代操作符/showpage而被运行,并且该数据不会被打印。
相反,当经过特定Anoto电子表单创建系统资格鉴定的打印机接收Anoto电子表单数据时,它检查数据是否由特定Anoto电子表单创建系统中的Anoto电子表单创建应用程序创建,并且在情况是这样时打印所接收数据。但是,如果所接收Anoto电子表单数据由另外某个系统中的Anoto电子表单创建应用程序来创建,则操作符/erasepage再次取代操作符/showpage而被运行,并且不打印该数据。
第一实施例相应地使有资格应用程序能够防止其Anoto电子表单数据由无资格打印机来打印,并且使有资格打印机能够拒绝打印无资格应用程序所创建的Anoto电子表单数据。如果使用第一实施例,则当且仅当数据由有资格应用程序来创建并且由有资格打印机所接收时,才会打印Anoto电子表单数据。此外在无需对现有打印机程序或Anoto电子表单数据规范的重大修改的情况下来提供这种保证。
第二实施例
本发明的第二实施例中的打印系统基本上具有与第一实施例中的打印系统相同的结构并且基本上通过与第一实施例中相同的方式来运行PostScript任务,但使用不同的任务补丁和不同的增加信息。
图10示出第二实施例中从主控计算机A作为任务补丁来发送的示范PostScript文件20′。图11示出第二实施例中从主控计算机B作为Anoto电子表单数据来发送的示范PostScript文件30′。与第一实施例的不同之处在于,PostScript解释器的标准打印操作符/showpage由图10中的行(2)′和图11中的行(4)′中的未定义操作符/undefined-operator取代。由于/undefined-operator不是标准PostScript操作符,并且没有在PostScript解释器的系统词典或用户词典中定义,所以这个操作符的执行将以错误(error)结束。
现在描述第二实施例中的打印系统的操作。当接收处理器102从主控计算机接收PostScript文件时,它首先将所接收PostScript文件存储在数据接收缓冲器103中,并且向编辑处理器104发出命令以便分析该文件。
在接收到来自接收处理器102的分析命令时,编辑处理器104读取数据接收缓冲器103中存储的PostScript文件,并且向任务类型分析处理器106发出命令以便确定该PostScript文件是用于将打印机100指定为有资格打印机还是作为PostScript任务来运行。
任务类型分析处理器106运行图4的流程图所示的分析过程。在步骤S41中,任务类型分析处理器106检查数据接收缓冲器103中存储的PostScript文件是否以PJL命令@PJL RESOURCEWRITE开始,之后跟随通用出口语言字符串%-12345X,如图10所示。
如果PostScript文件以@PJL RESOURCEWRITE开始(步骤S41中的“是”),则任务类型分析处理器106判定数据接收缓冲器103中存储的PostScript文件是被发送以便将打印机100指定为有资格打印机的任务补丁。任务类型分析处理器106向任务补丁注册处理器107发出命令,以便注册数据接收缓冲器103中存储的PostScript文件。通过执行这个命令,任务补丁注册处理器107注册该任务补丁(步骤S42)。
将参照图5的流程图来描述任务补丁注册过程。通过读取PostScript文件20′,任务补丁注册处理器107获得分配给任务补丁的存储位置和文件名(步骤S51)。在图10所示的PostScript文件20′中,LOCATION=″PsGeneralAccess DriverProc″指明任务补丁要以文件名DriverProc存储在任务补丁缓冲器108的PsGeneralAccess区域中。
任务补丁注册处理器107创建具有在步骤S51中得到的文件名的文件,并且打开该文件,从而允许写入(步骤S52)。
然后,任务补丁注册处理器107获得要注册为任务补丁的PostScript文件20′的数据量(步骤S53)。图10中,PostScript文件20′的数据量为80390字节,如SIZE=80390所示。整个PostScript文件20′将存储在任务补丁缓冲器108中。
步骤S54至S56形成循环,其中任务补丁注册处理器107反复地将数据写入任务补丁缓冲器108,并且递减步骤S53中得到的数据量。在步骤S54中,任务补丁注册处理器107判定递减数据量是否已经达到零。如果不是(步骤S54中的“否”),则在步骤S55中,任务补丁注册处理器107从数据接收缓冲器103中存储的文件读取一个数据字节,并且将该字节写入在步骤S52在任务补丁缓冲器108中打开的文件;在步骤S56中,任务补丁注册处理器107将步骤S53中得到的数据量递减一字节;然后该过程返回到S54。
当步骤S53中得到的数据量递减为零时(步骤S54中的“是”),则任务补丁注册处理器107关闭该文件(步骤S57)。这时已经注册任务补丁。
如果数据接收缓冲器103中存储的PostScript文件不是从@PJLRESOURCEWRITE开始(图4的步骤S41中的“否”),则任务类型分析处理器106认为数据接收缓冲器103中存储的PostScript文件是PostScript任务,该PostScript任务被发送以便运行从而打印例如Anoto电子表单。在这种情况下,任务类型分析处理器106向任务补丁读出处理器109发出命令以便读取任务补丁。在从任务类型分析处理器106接收到任务补丁读取命令时,任务补丁读出处理器109从任务补丁缓冲器108读取任务补丁(步骤S43),并且运行本文所述的处理(步骤S44)。
将参照图6的流程图来描述任务补丁读取过程。在从任务类型分析处理器106接收到任务补丁读取命令时,任务补丁读出处理器109检查任务补丁缓冲器108是否保存了命名为DriverProc的文件。如果任务补丁DriverProc已经如图5所示被注册并且存储在任务补丁缓冲器108中(步骤S61中的“是”),则任务补丁读出处理器109读取任务补丁(步骤S62),并且在数据接收缓冲器103中存储的PostScript文件30′被运行之前将该任务补丁作为PostScript任务来运行(步骤S63)。
将参照图7的流程图来描述由任务补丁读出处理器109运行图10所示的PostScript任务。图7中的第一步骤S71对应于图10的行(1),其中PostScript操作符def将/C5900_ANOTO定义成值“真”的关键字对象,并且将这个对象的访问权限制为仅执行访问。图7中的第二步骤S72对应于图10中的行(2)′和后续行,其中PostScript解释器的标准字体定义操作符/definefont由定义等待执行的PostScript文件30′将由编辑处理器104根据PostScript文件30′是否包含有资格Anoto电子表单数据来运行的方式的新操作符取代。
当任务补丁读出处理器109完成运行作为任务补丁的PostScript文件20′时,编辑处理器104执行数据接收缓冲器103中保存的PostScript文件30′的处理。将参照图12和图13的流程图来描述图11所示的PostScript任务的执行。
图12中的第一步骤S1201对应于图11中的行(3),它将值C5900_ANOTO分配给PostScript解释器的用户词典中的关键字JobName。这种分配是关于PostScript文件30′已经由特定Anoto电子表单创建系统中的Anoto电子表单创建应用程序创建的宣告。
图12中的下一个步骤S1202对应于图11中的行(4)′和后续行,其确定栈是否包含其中存在宣告关键字/C5900_ANOTO的/DriverOps词典的/Proset resource,以及关键字/C5900_ANOTO的值是否为“真”。如果关键字/C5900_ANOTO存在,并且其值为“真”(步骤S1202中的“是”),则图12的过程结束,以及专有Anoto点模式由PostScript任务来定义,下面进行说明。如果关键字/C5900_ANOTO不存在,或者如果它的值不为“真”(步骤S1202中的“否”),则特定Anoto电子表单创建系统中的Anoto电子表单创建应用程序所创建的Anoto电子表单数据已经发送给具有尚未经过特定Anoto电子表单创建系统资格鉴定为能够打印Anoto电子表单数据的PostScript解释器的打印机。在这种情况下,PostScript解释器的标准打印操作符/showpage用未定义操作符/undefined-operator取代,以便强制任务以错误结束(步骤S1203)。因此,如果将特定Anoto电子表单创建系统所创建的Anoto-资格鉴定的电子表单数据发送给具有尚未经过Anoto电子表单创建系统资格鉴定的PostScript解释器的打印机,则Anoto电子表单数据不会被打印。
但是,第二实施例中的打印机100在图7中已经由补丁任务资格鉴定,其中def操作符将关键字/C5900_ANOTO定义为“真”,因此图12中的步骤S1203没有运行。每当特定Anoto电子表单创建系统中的应用程序所创建的Anoto电子表单数据在打印机已经注册将打印机的PostScript解释器指定为经过特定Anoto电子表单创建系统资格鉴定的任务补丁(PostScript文件20′)之后被发送给图1的打印机100,则图12中的步骤S1203没有运行。
在完成图12所示的过程之后,图11中的PostScript任务的执行继续进行,以及编辑处理器104定义专有点模式。专有点模式由PostScript语言中的字体定义来定义。图11中,定义通过行(5)中的语句/AnotoFontexch definefont pop来运行。
编辑处理器104运行PostScript任务,如图13的流程图所示。图11的行(5)中的操作符/definefont在图7的步骤S72中由图10的行(2)中的新定义操作符取代,因此在下面所述的处理中,运行新定义的操作符/definefont。
在步骤S1301,编辑处理器104确定通过操作符/definefont所定义的PostScript字体的名称是否为/AnotoFont。如果所定义字体名称为/AnotoFont(步骤S1301中的“是”),则PostScript任务处理进入步骤S1302,其中编辑处理器104还确定PostScript解释器的用户词典中的关键字/JobName的值是否为C5900_ANOTO(步骤S1302)。
如果关键字/JobName没有宣告,或者如果它的值没有设置为C5900_ANOTO(步骤S1302中的“否”),则编辑处理器104判定Anoto电子表单数据已由不同于特定Anoto电子表单创建系统的某个系统中的Anoto电子表单创建应用程序来创建,并且采用未定义操作符/undefined-operator来取代PostScript解释器的标准打印操作符/showpage,以便强制任务以错误结束(步骤S1303)。当PostScript解释器在分析PostScript操作符期间检测到错误,则立即停止PostScript任务执行过程,从数据接收缓冲器103接收整个PostScript文件数据直至文件结尾(EOF),以及删除该数据。因此,即使将数据发送给具有经过特定Anoto电子表单创建系统资格鉴定的PostScript解释器的打印机,无资格系统中的Anoto电子表单创建应用程序所创建的Anoto电子表单数据也不会由这个打印机来打印。
如果关键字/JobName被宣告以及如果它的值为C5900_ANOTO(步骤S1302中的“是”),则编辑处理器104使显示列表缓冲器105存储分析结果,并且向光栅化处理器110发出命令以便生成打印图像数据。
在接收到来自编辑处理器104的这个命令时,光栅化处理器110从显示列表缓冲器105读取由编辑处理器104所执行的分析的结果,生成打印图像数据,使打印图像数据存储在打印图像缓冲器111中,以及向引擎控制处理器112发出命令以便根据打印图像数据来打印图像。
在接收到来自光栅化处理器110的打印命令之后,引擎控制处理器112从打印图像缓冲器111读取打印图像数据,以及使引擎单元113根据打印图像数据来打印图像。
在引擎控制处理器112的控制下,引擎单元113执行众所周知的电子照相打印过程,例如以便根据打印图像数据在打印介质上打印图像。
在第二实施例中,当打印机接收到特定Anoto电子表单创建系统中的应用程序所创建的Anoto电子表单数据时,该数据包含检查打印机是否经过特定Anoto电子表单创建系统资格鉴定的PostScript代码。如果打印机已经过资格鉴定,则它将打印该数据。但是,如果打印机没有经过资格鉴定,则未定义操作符(/undefined-operator)将取代操作符/showpage而被运行,并且该数据不会被打印。
相反,当经过特定Anoto电子表单创建系统资格鉴定的打印机接收到Anoto电子表单数据时,它检查数据是否由特定Anoto电子表单创建系统中的Anoto电子表单创建应用程序创建,并且在情况是这样时打印所接收数据。但是,如果所接收Anoto电子表单数据由另外某个系统中的Anoto电子表单创建应用程序来创建,则未定义操作符(/undefined-operator)再次取代操作符/showpage而运行,并且不打印该数据。
第二实施例相应地使有资格应用程序能够防止其Anoto电子表单数据由无资格打印机来打印,并且使有资格打印机能够拒绝打印无资格应用程序所创建的Anoto电子表单数据。如果使用第二实施例,则当且仅当数据由有资格应用程序来创建并且由有资格打印机所接收时,才会打印Anoto电子表单数据。
本发明并不局限于用于例如其中单个打印机100从主控计算机A接收任务补丁以及从主控计算机B接收Anoto电子表单数据的上述打印系统10等打印系统。本发明可适用于其它打印系统,例如图14所示的系统,其中主控计算机C发送指定有资格PostScript解释器的任务补丁,主控计算机D发送特定(即有资格)Anoto电子表单创建系统中的Anoto电子表单创建应用程序所创建的Anoto电子表单数据,主控计算机E发送无资格Anoto电子表单创建系统中的Anoto电子表单创建应用程序所创建的Anoto电子表单数据,打印机200具有有资格PostScript解释器,以及打印机300具有无资格PostScript解释器。在主控计算机C向打印机200发送任务补丁以及打印机200将它注册之后,在主控计算机D上所创建的Anoto电子表单数据(具有增加宣告的Anoto数据)可由打印机200打印,如符号‘OK’所示,但在打印机300上不能打印,如符号‘NG’所示。相反,在主控计算机E上所创建的Anoto电子表单数据(没有增加宣告的Anoto数据)可以是由打印机300可打印的,但不会是由打印机200可打印的。
以上描述了具有PostScript解释器的打印机,但是,本发明可适用于其它设备,例如具有PostScript解释器的传真机或者具有PostScript解释器的多功能外设。
本领域的技术人员会知道,在本发明的范围之内,其它变化是可能的,这在所附权利要求书中定义。
Claims (12)
1.一种包括打印机和主控装置的打印系统,对于所述打印机将特定信息设置为资格指示以及所述主控装置用于向所述打印机传送特定应用创建的打印信息,其中:
所述特定应用具有信息添加单元,所述信息添加单元用于将对应于所述特定信息的增加信息附加到所述打印信息;以及
所述打印机包括
判定单元,用于判定从所述主控装置传送的所述打印信息是否包含所述增加信息以及所述增加信息是否对应于所述特定信息,以及
打印处理单元,如果所述判定单元判定所述打印信息包含所述增加信息并且所述增加信息对应于所述特定信息,则所述打印处理单元运行所述打印信息的打印,如果所述判定单元判定所述打印信息没有包含所述增加信息,则丢弃所述打印信息,以及如果所述判定单元判定所述打印信息包含所述增加信息但所述增加信息没有对应于所述特定信息则丢弃所述打印信息。
2.如权利要求1所述的打印系统,其中,当丢弃所述打印信息时,所述打印处理单元用信息删除指令取代所述打印数据中的打印输出指令。
3.如权利要求1所述的打印系统,其中,当丢弃所述打印信息时,所述打印处理单元用未定义处理执行指令取代所述打印数据中的打印输出指令。
4.如权利要求1所述的打印系统,其中,所述增加信息包含用于确定在所述打印机中是否设置所述特定信息的指令。
5.如权利要求4所述的打印系统,其中,当所述打印机中没有设置所述特定信息时,所述指令用信息删除指令取代所述打印信息中的打印输出指令。
6.如权利要求4所述的打印系统,其中,当所述打印机中没有设置所述特定信息时,所述指令用未定义处理执行指令取代所述打印信息中的打印输出指令。
7.一种打印机,包括:
接受单元,用于接受特定应用程序所创建的特定信息和/或打印信息的输入;
存储单元,用于当经由所述接受单元接受的信息是所述特定信息时存储所述特定信息;
特定信息设置单元,用于当经由所述接受单元接受的所述信息是所述打印信息时将所述存储单元中存储的所述特定信息设置为资格指示;
判定单元,用于确定所述打印信息是否包含与所述特定信息设置单元所设置的所述特定信息对应的增加信息;以及
打印处理单元,用于当所述判定单元判定所述打印信息包含所述增加信息以及所述增加信息对应于所述特定信息时运行所述打印信息的打印,如果所述判定单元判定所述打印信息没有包含所述增加信息则丢弃所述打印信息,以及如果所述判定单元判定所述打印信息包含所述增加信息但所述增加信息没有对应于所述特定信息则丢弃所述打印信息。
8.如权利要求7所述的打印机,其中,当丢弃所述打印信息时,所述打印处理单元用信息删除指令取代所述打印数据中的打印输出指令。
9.如权利要求7所述的打印机,其中,当丢弃所述打印信息时,所述打印处理单元用未定义处理执行指令取代所述打印信息中的打印输出指令。
10.如权利要求7所述的打印机,其中,所述增加信息包含用于确定在所述打印机中是否设置所述特定信息的指令。
11.如权利要求10所述的打印机,其中,当所述打印机中没有设置所述特定信息时,所述指令用信息删除指令取代所述打印信息中的打印输出指令。
12.如权利要求10所述的打印机,其中,当所述打印机中没有设置所述特定信息时,所述指令用未定义处理执行指令取代所述打印信息中的打印输出指令。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008146100 | 2008-06-03 | ||
JP2008-146100 | 2008-06-03 | ||
JP2008146100A JP4712070B2 (ja) | 2008-06-03 | 2008-06-03 | 印刷システム及び印刷装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101599006A true CN101599006A (zh) | 2009-12-09 |
CN101599006B CN101599006B (zh) | 2014-05-07 |
Family
ID=41066720
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910203308.5A Expired - Fee Related CN101599006B (zh) | 2008-06-03 | 2009-05-25 | 打印系统和打印机 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8189216B2 (zh) |
EP (1) | EP2131311B1 (zh) |
JP (1) | JP4712070B2 (zh) |
CN (1) | CN101599006B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106055285A (zh) * | 2016-05-27 | 2016-10-26 | 上海传真通信设备技术研究所有限公司 | 一种基于硬拷贝设备处理任务指令的方法及装置 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6174896B2 (ja) * | 2013-04-19 | 2017-08-02 | キヤノン株式会社 | 印刷システム、サーバ、情報処理装置、画像処理装置、印刷制御方法およびプログラム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1307313A (zh) * | 2000-01-31 | 2001-08-08 | 佳能株式会社 | 图象处理系统 |
CN1445711A (zh) * | 2002-03-20 | 2003-10-01 | 富士施乐株式会社 | 图像读取器和复印机 |
US20070188817A1 (en) * | 2006-02-13 | 2007-08-16 | Konica Minolta Business Technologies, Inc. | Image processing apparatus for extracting code data from scanned image and control method thereof |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08152988A (ja) * | 1994-11-28 | 1996-06-11 | Shikoku Nippon Denki Software Kk | ウインドウ表示キャッシュシステム |
SE517445C2 (sv) | 1999-10-01 | 2002-06-04 | Anoto Ab | Positionsbestämning på en yta försedd med ett positionskodningsmönster |
JP2003186642A (ja) * | 2001-12-20 | 2003-07-04 | Alps Electric Co Ltd | 印刷装置及び電子データ配信装置 |
JP4257150B2 (ja) * | 2003-05-16 | 2009-04-22 | 沖電気工業株式会社 | 印刷文書の改ざん検出装置および改ざん検出方法 |
GB0413466D0 (en) * | 2004-06-16 | 2004-07-21 | Hewlett Packard Development Co | Generation of areas of position location pattern |
JP2007148644A (ja) * | 2005-11-25 | 2007-06-14 | Sharp Corp | データ記憶装置、icカード及びデータ記憶方法 |
EP2104889A4 (en) * | 2006-10-20 | 2012-03-07 | Anoto Ab | PRINTING CODING PATTERNS |
-
2008
- 2008-06-03 JP JP2008146100A patent/JP4712070B2/ja active Active
-
2009
- 2009-05-07 EP EP09159670.0A patent/EP2131311B1/en not_active Not-in-force
- 2009-05-08 US US12/453,365 patent/US8189216B2/en not_active Expired - Fee Related
- 2009-05-25 CN CN200910203308.5A patent/CN101599006B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1307313A (zh) * | 2000-01-31 | 2001-08-08 | 佳能株式会社 | 图象处理系统 |
CN1445711A (zh) * | 2002-03-20 | 2003-10-01 | 富士施乐株式会社 | 图像读取器和复印机 |
US20070188817A1 (en) * | 2006-02-13 | 2007-08-16 | Konica Minolta Business Technologies, Inc. | Image processing apparatus for extracting code data from scanned image and control method thereof |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106055285A (zh) * | 2016-05-27 | 2016-10-26 | 上海传真通信设备技术研究所有限公司 | 一种基于硬拷贝设备处理任务指令的方法及装置 |
CN106055285B (zh) * | 2016-05-27 | 2019-09-06 | 上海传真通信设备技术研究所有限公司 | 一种基于硬拷贝设备处理任务指令的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US8189216B2 (en) | 2012-05-29 |
US20090296137A1 (en) | 2009-12-03 |
JP4712070B2 (ja) | 2011-06-29 |
EP2131311A3 (en) | 2015-04-01 |
CN101599006B (zh) | 2014-05-07 |
EP2131311B1 (en) | 2018-06-20 |
JP2009294787A (ja) | 2009-12-17 |
EP2131311A2 (en) | 2009-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210012056A1 (en) | Integrated document editor | |
CN100368980C (zh) | 打印系统和打印处理方法 | |
EP1515263A2 (en) | Method for printing digital documents | |
US8352862B2 (en) | Information processing apparatus and method allowing flexible output settings for individual pieces of output data | |
US9094544B2 (en) | Information processing apparatus, information processing method, and storage medium | |
US7082574B2 (en) | Printing output user interface control method, recording medium storing the method in program, and printing data supply device and information processing system executing the program | |
US8319986B2 (en) | Method of protecting leakage of information and information processing apparatus and driver program implementing the same | |
US8164771B2 (en) | Image processing apparatus for treating recording medium provided with RFID chip | |
US20070263241A1 (en) | Printing system and method, and recording medium | |
CN100524292C (zh) | 文件处理装置和方法 | |
CN100481100C (zh) | 抑制信息泄露的方法、实现该方法的信息处理装置 | |
CN102622193B (zh) | 打印控制装置及其控制方法 | |
CN101599006B (zh) | 打印系统和打印机 | |
WO2005024617A2 (en) | Printing digital documents | |
US8184321B2 (en) | Information processing apparatus with print function groupings, control method therefor, and computer program | |
US20030011818A1 (en) | Printing system and management method therefor | |
JP2004297709A (ja) | 書類作成システム及び書類作成プログラム | |
JP6190549B1 (ja) | 文書処理システム | |
KR100981675B1 (ko) | 보안등급을 자동으로 지정하여 인쇄하는 방법 | |
JPH07114610A (ja) | 情報処理システムの入力装置及び情報処理システムの入力方法 | |
JP4908054B2 (ja) | 印刷システム、印刷方法及び印刷処理プログラム | |
JP5024007B2 (ja) | 文書管理システム、文書管理装置およびプログラム | |
KR20010084651A (ko) | 개인용 컴퓨터에서 문서의 재프린트 장치 및 방법 | |
JP2007148933A (ja) | 印刷システム、情報処理装置、制御方法、及びプログラム | |
JP2005190034A (ja) | ラスタライズ処理装置、ラスタライズ処理レポート作成方法、およびラスタライズ処理レポート作成プログラム、製版システム、製版システムのレポート作成装置、およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20140507 Termination date: 20210525 |
|
CF01 | Termination of patent right due to non-payment of annual fee |