使用程序脚本语言的标识打印机api的制作方法

文档序号:2486230阅读:433来源:国知局

专利名称::使用程序脚本语言的标识打印机api的制作方法
技术领域
:一般来说本发明涉及打印机,尤其涉及通过与标识和标签打印机(labelandtagprinter)固件交互从而增强打印机功能。
背景技术
:大部分的标识和标签打印机通过传统的预定义专用控制语言工作。例如,佐藤条码打印机语言(SATOBarcodePrinterLanguage,SBPL)、ZEBRA编程语言(ZEBRAprogramminglanguage,ZPL),DATAMAX打印机语言(DATAMAXPrinterLanguage,DPL),INTERMEC打印机语言(INTERMECPrinterLanguage,IPL)或类似的打印机语言,这些语言包括以下专用功能要求相当低的技能水平就能够使用户实现打印机输出功能中的变化。各种打印机模型,例如由支持上述所列打印机语言的打印机的卖主提供的,能够执行通过预定义的单一指令确定的打印任务。典型地通过改变打印机的固件产生打印机功能的特定变化。由于每一打印机各自的控制语言是预定义的,现有打印机仅能够执行预定任务。如果需要增加各种打印机功能,则需要因此而改变固件。这经常涉及进行复杂的源代码修订和嵌入式程序设计开发工具以进行修订。但这不是灵活的方法并且客户不能在本地定制。
发明内容现有技术中,不改变打印机固件的源代码并且没有昂贵的开发工具,就不能定制或以其它方式修改标识/标签打印机软件。因此,提出一种用于实现修改具有用于控制打印操作的固件的打印机的功能的系统和方法。开发第一程序码,所述第一程序码在计算机可读介质上运行时并与打印机固件交互修改打印机功能。所述第一程序码使用第一程序设计语言编写,例如LUA程序设计语言,并且所述固件使用第二程序设计语言而不是第一程序设计语言编写。此后,第一程序码在计算机可读介质上运行,并且打印机的功能被修改作为与所述固件交互的运行的第一程序码的功能。这种交互不会修改固件。在优选实施方式中,提供一种与标识和标签打印机相关的解释性脚本语言,该脚本语言用于开发通过应用程序接口(API)与打印机固件交互和互动的打印机软件应用(例如,打印机应用程序)。优选地,标识和标签打印机安装有LUA虚拟机,优选采用LUA脚本语言开发打印机应用,所述打印机应用适用于通过应用程序接口(API)与打印机的固件交互的标识和标签打印机,并且LUA脚本语言允许访问打印机的所有固件和硬件功能。在下面结合说明书附图对本发明的描述中,本发明的其它特征和优点是显而易见的。为了举例说明本发明,图中示出了目前优选的结构,然而应该理解本发明不限于示出的具体结构和技术手段。本发明的特征和优点将在下面结合附图的描述中显而易见,其中图1示出了根据优选实施方式的硬件结构实施例;图2示出了图1中的信息处理器实施例的功能元件;图3是说明根据优选实施方式提供的打印机API的框图;图4示出了根据优选实施方式提供的使用API定义以及由标识和标签打印机进行标识打印的标识实施例;图5示出了指示各自的水平和竖直位置并用于定义在标识上的数据域的数据域尺寸实施例;图6示出了根据优选实施方式提供的使用API和表示颜色选择限定以及由标识和标签打印机打印的另一标识实施例;图7-10示出了包括多个电子存储格式的优选实施方式的实现方式。具体实施例方式在此根据教导,提供一个或多个接口使个人能够定制标识和标签打印机设置并且不需要更新,改变或以其它方式更改设在标识和标签打印机的固件源代码并且无需昂贵的开发工具。因此,标识和标签打印机能够有效地用于应用开发而无需让其他人使用打印机专用解释语言编写应用。在优选实施方式中,结合标识和标签打印机提供解释性脚本语言。一套被格式化为打印机应用程序接口(API)的打印机扩展用于与打印机固件互相作用并操纵打印机固件从而实现定制和扩展的功能。API优选用于标识和标签打印机使用。在优选实施方式中,解释性脚本语言是LUA0通过打印机固件与这套打印机API(例如用脚本语言开发的API)交互,通过标识和标签打印机使用的软件命令给予标识和标签打印机的用户更好的灵活性和访问性以实现各种任务。使用与打印机固件联合的API,用户不再需要改变标识和标签打印机的固件源代码或访问为改变或修改标识和标签打印机的固件源代码典型需要的开发工具。如下面更进一步地详细描述的,在此教导的API支持各种功能,例如与不同的键盘、显示器交互,提供打印绘制的可变字体和样式,访问打印机文件系统,打印机配置和各种与标识和标签打印相关的其它功能。因此,本发明提供了许多打印解决方法并且这些解决方法不需要对固件源代码修改,也不需要包括例如用于修改预定义的专用控制和打印机固件的软件开发工具的嵌入式系统。现在参考说明书附图,其中相同的附图标识表示相同的元件,图1举例说明了根据本发明实施方式的一种硬件结构实施例,可以通过直接的电缆连接或通过通信网络提供和安装打印机应用程序,在此一般称作系统100。在图1示出的实施例中,信息处理器102具有集成开发程序环境(integrateddevelopmentprogrammingenvironment,IDE),例如使用本领域技术人员知道的LUA程序设计语言开发应用。信息处理器102优选包括各种必要的数据库以支持本发明。然而,预设的信息处理器102可通过通信网络106或者任何与信息处理器102连接的其它通信网络访问任何需要的数据库。通信网络106优选是全球公共通信网络,例如因特网,或者也可以是广域网(Wideareanetwork,WAN),局域网(Localareanetwork,LAN),内联网或其它能够使计算装置和外围设备通信的网络。在优选实施方式中,信息处理器102可以是任何能够通过通信网络106发送和接收数据的计算机可读介质装置,例如大型计算机、迷你计算机,个人计算机,膝上型计算机,个人数字助理(PersonaldigitalassistantPDA),蜂窝电话和因特网接入装置如网络电视(WebTV)。另外,信息处理器102优选装配有网络浏览器软件,如MICROSOFTINTERNETEXPLORER,M0ZILLAFIREFOX或类似浏览器软件。使用任何已知数据通信网络技术将信息处理器102与通信网络106连接。打印机108也如图1所示,其优选是标识和标签打印机并且可操作地打印从信息处理器102接收标识和标签的数据。标识和标签打印机108可具有键盘110和显示器112以使标识和标签打印机108在缺少信息处理器102的情况下或与信息处理器102共同配合的情况下能够有输入和输出功能。图2示出信息处理器102实施例的功能单元,其包括一个或多个用于运行软件代码和控制信息处理器102工作的中央处理单元(CPU)202。其它单元包括只读存储器(ROM)204;随机存取存储器(RAM)206;—个或多个通过通信网络传输数据到其它计算装置或从其它计算装置接收数据的网络接口208;用于存储程序代码数据库和应用数据的存储装置210,如硬盘驱动器、软盘驱动器、磁带驱动器、⑶ROM或DVD;—个或多个输入装置212,如键盘、鼠标、跟踪球、麦克风或类似设备;以及显示器214。进一步地,一个或多个功能单元202-214也可以相适宜地配置有或设有标识和标签打印机108。信息处理器102的各部件不需物理上包含在同一机壳内或甚至位于单一位置。例如,存储设置210可位于远离信息处理器102的其余单元的位置,并且甚至可经通信网络106通过网络接口208连接到CPU202。信息处理器102优选包括配有足够存储容量的存储器以提供必要的数据库、论坛和其它通信服务也作为用于超文本标识语言(HypertextMarkupLanguage,HTML)、Java小应用程序、Active-X控制程序通信的网络服务器。信息处理器102布置有多个部件,例如图2中示出的那些适合于信息处理器102的预期操作环境的部件。选择CPU202、网络接口208以及存储器和存储装置以确保容量满足预期要求。本发明的实质是编写计算机可运行代码(如软件)的本领域技术人员能够采用一个或多个流行的计算机语言和开发环境的结合实施在此说明的功能,该计算机语言和开发环境包括但不限于LUA,C,C++,VisualBasic,JAVA,HTML,XML,ACTIVESERVERPAGES,JSP(JAVAServerPages),Servlet,MYSQL和PHP。虽然本发明由在此的实施例进行说明并且依据采用网络浏览器和网站服务器(例如信息处理器102)的基于Web系统进行描述,但是系统100不限于这样的配置。据此可知系统100被设置成通过任何已知的通信方法使标识和标签打印机108与信息处理器102通信以及标识和标签打印机108输出从信息处理器102接收的数据,例如,采用非因特网浏览器WINDOWS查看器外加局域网协议如互联网分组交换协议(InternetPacketExchange,IPX)、拨号网、第三方网(Third-partyNetwork)、专用网或增值网(ValueAddedNetwork,VAN)。进一步的可知任何合适的操作系统可在信息处理器102上使用,例如DOS,WINDOWS3.x,WINDOWS95,WINDOWS98,WINDOWSNT,WINDOWS2000,WINDOffSME,WINDOWSCE,WINDOWSPOCKETPC,WINDOWSXP,MACOS,UNIX,LINUX,PALMOS,POCKETPC禾口任何其它合适的操作系统。在优选实施方式中,标识和标签打印机108应用采用LUA程序设计语言开发。根据一种优选实施方式,则包括可操作以处理在所述应用中提供的LUA程序设计声明的LUA解释器。与典型的高级程序设计语言不同,LUA是一种脚本语言并不是基础程序设计语言。与接收SBPL命令或其它预定义的命令使得标识和标签打印机执行各种功能的典型标识和标签打印机不同,本发明实现打印机API,该打印机API是对与打印机固件交互并且由LUA解释器解释的LUA语言的扩展。这使得能够开发更高级和复杂的应用,例如通过函数调用。此外,相比于现有技术中为实现单一的改变而需要将各自固件应用程序全部重写的标识和标签打印机,本发明通过实现作为LUA程序设计语言扩展的API即可更改标识和标签打印机108部分功能。本发明的另一好处是使用LUA程序设计语言开发和用标识和标签打印机108API实现的应用更简约并且运行明显更快。这是因为为了实现本发明的API其它完成的各种功能,现有技术的标识和标签打印机需要更多的软件指令。更进一步地,LUA解释器有效地与本发明的API交互,例如通过利用函数调用,变量说明或类似方式,并且相比于现有技术标识和标签打印机代码利用率明显改进,如需求更少的存储空间的功能。本发明的LUA打印机API相比现有技术的标识和标签打印机的另一优势是访问打印函数的能力并且无需解释器通过现有控制语言,如SBPL或ZPL,访问打印函数。换句话说,API直接与控制标识和标签打印机108打印功能的标识和标签打印机108固件交互。这是相比于现有技术中需要例如一代SBPL命令以与现有控制语言交互的系统的改进,因而增加了与修改打印机功能关联的步骤和处理时间。而且,由于本发明的API通过LUA解释器交互,实际上消除了除基于标识和标签打印机108的内部存储要求之外的与应用关联的尺寸限制。这相比于现有技术标识和标签打印机是改进,例如,现有标识和标签打印机对能被安装且不支持动态存储分配的代码有行数限制。本发明的API支持,例如,函数调用和其它高级程序设计语言功能,如增加实现具体功能的程序设计代码量的释放存储(无用单元收集)。本发明的另一好处是开发工具,如MICROSOFTVISUALSTUDIO或其它集成开发环境(IDE),对LUA来说作为插件组件是可用的。用于各标识和标签打印机108的应用开发对用可视化集成开发环境开发软件应用熟悉或感觉便利的开发者来说是更有吸引力。本发明的另一好处是LUA应用能够在具有模拟打印机工作的LUA虚拟机的计算机上运行。用户能够在下载并将应用安装到打印机上之前在计算机上测试已开发的LUA应用,这省去了实际操作打印机从而测试LUA应用的需要。在优选实施方式中,多个独立的LUA虚拟机在一种链式中是可操作的并且能够在单一标识和标签打印机108或其网络上实现。这样,能够实现可配置的动态本地设置,例如,对于根据各种定制设置(例如区域设置和语音设置)分类数据的条形码打印机。各种本地设置可存储于特定计算机系统的操作系统,性能的改变依据例如本地设置。通过LUA解释器实现API,可提供不属于之前现有技术的打印机功能的附加打印机功能,现提供根据一优选实施方式给予的关于附加打印机功能及其改进实现的讨论。优选地,在示例实施方式中通过执行LUA来支持程序设计函数调用以及通过变量进行声明,寻址,与程序设计函数之间传输数值的能力。优选地,程序设计函数返回代表函数是否成功运行的值,如错误代码。假使例如函数没有如预想一样运行,返回代表错误的原因、错误的症状、错误的结果或其它合适信息的错误代码。此外,函数名和变量名,如涉及的表名、字符串值、日期、数值或类似的参数,优选对用户不轻易显示并且即使显示也是在视图内至少部分隐藏或者在视图内完全隐藏。优选地,在此的教导用于支持安全性实现,包括,例如要求提供有足够授权和认可的用户执行各种任务,例如访问特定的数据、一个或多个数据目录,或者创建、移除或以其它方式修改数据目录、数据文件或类似物。由API支持的另一特征是界面绘制。如在此使用的,绘制一般涉及交互式程序设计对象的创建。例如,绘制对象可形成数据域(例如基于文本的数据域),条形码,图表域。绘制对象包括一种或多种能够操作的特性,例如通过方法。优选地,通过API绘制的对象(例如文本域、条形码和绘图对象)提供(如,加入或以其它方式嵌入)标识对象并且通过标签打印机108打印。而且,API在开发标识或打印标识或者开发和打印标识时,支持提供置于标识上的对象如条形码并且不会造成错误,所述标识至少部分在标识和标签打印机108的可打印区域的外面。这个特征使得开发具有例如条形码(通过标识和标签打印机108仅打印一半的条形码)的标识成为可能。假定用户期望通过标识和标签打印机108打印部分或者不完整的对象,例如条形码,在标识上的,这个特征提供了对现有技术的修改打印机功能的方法的改进。在一实施方式中的工作期间,绘制对象(例如文本域、条形码、绘图框、图像或类似物)的各个位置由水平位置参数和垂直位置参数限定(如,hPos和vPos)。参数值优选限定用于对象的定位点位置。假定hPos和vPos正确设置,那么定义误差参数(如E_SUCCESS)。可选地,如果hPos或vPos没有正确设置,那么定义不同的误差参数(如EPARAM)。除了用于定位而定义的参数外,本发明支持对象放大,如条形码或图像。例如,定义水平和垂直放大参数(如hMag和vMag)用于设置水平和垂直像素放大(例如从值1_12),该像素放大代表对象的水平和垂直方向上各自的放大程度。图3是举例说明根据优选实施方式提供的关联API302的框图,其与标识和标签打印机108固件交互。如图3所示,键盘API304是可操作的以接收或解释(例如读取)来自与标签打印机108集成的键盘110的信号。可选地,键盘API304工作以读取或解释来自不是直接与标识和标签打印机108连接的外部键盘或其它输入装置212的信号。显示API306工作以将各式各样的文本和图形内容写入到与标识和标签打印机108相连的外部显示器214。优选地,显示API306支持字体和编码类型的多种选择,例如,用于多种不同的写入语、继续参考图3,打印绘制API308支持用户定制的数据域元素作为标识和标签打印机108打印的标识上的输出。这种数据域元素的实施例包括文本数据域,I-D和2-D条形码,线条和框,三角函数,图像,单独像素,图形,格式化数据和计数器值。打印机绘制API308使用户可定义一种类型的数据域和用于输出到标识/标签上的所述数据域的各自位置。优选地,打印机绘制API提供支持各种语言的字体和编码类型的可选选择。优选支持固定长度或可变长度数据格式,并且它们可包括在经由打印机绘制API308的通信接口或文件输入或域定义中。其它特征包括支持可选的彩色输出选择以实现定义一个或多个上述描述的域对象的颜色。另外,一个或多个打印输出或进纸命令作为打印绘制API308的功能用于输出空白或已印刷的标识和标签。优选地,打印绘制API308还提供用户可选的打印质量控制特征。此外,文件系统API310优选使用户能够储存、删除、读取和写入文件,所述文件位于一个或多个标识和标签打印机108的只读存储文件系统、随机存取存储文件系统、闪存文件系统或外部存储源中,例如紧凑式闪存卡、安全数字存储卡、USB存储装置或类似存储装置。提供用户访问存储在与标识和标签打印机关联的各种内部或外部源中的数据、文件或类似物明显增加了用户控制和操作标识和标签打印机108运转的灵活性。关于文件系统API310优选具有的各种功能的实施例包括格式化标识和标签打印机108的文件系统,决定目录的反复进入,导航特定目录,创建新的目录,复制文件、移除目录或文件,决定文件系统中的已用和可用字节以及改变对文件或目录的访问权限。继续参考图3,射频识别(RadioFrequencyIdentification,RFID)API312支持对标识和标签打印机108上的RFID芯片或RFID嵌体(RFIDInlay)的读写访问。另外,实时时钟API314使用户能够定义以及读取日期和时间数据到标识和标签打印机108和定义以及读取来自标识和标签打印机108的日期和时间数据。配置API316支持用户定义的打印机具体参数。例如,配置API316使用户能够定义与打印速度、质量、日期、时间功能、本地语言、菜单控制和类似功能相关的通信参数。配置API316对使用户能够定义或修改用于标识和标签打印机108的操作控制特别有用,所述操作控制典型地对设在标识和标签打印机108的固件是专用的并且仅通过具有专业化软件和技能的技术性熟练用户才能修改。另外,通信API318优选控制与外部I/O接口装置的通信。支持多数通信协议和标准,包括,例如,RS232,RS485,RS422,USB,LAN,WLAN和中继接口的外部数字。图3中示出的其它API302包括可操作控制打印机中装置的装置API320,可操作在任何给定时间报告打印机状态的打印机状态API322,以及可操作解析已送到标识和标签打印机108的命令和/或文件(例如已发送到标识和标签打印机108的XML命令和/或XML文件)的解析器API3M。一旦被解析,就能够解释XML命令并将其用于控制由标识和标签打印机108提供的输出。除了装置API320、打印机状态API322和解析器API324之外,API302优选包括纸处理API326,其为了支持一个或多个标识和标签尺寸提供多种纸张功能,包括例如打印进纸,格式进纸,换行,测试进纸或类似功能。另外,图中示出了提供声音控制的声音API3^例如对在标识和标签打印机108中的蜂鸣器、蜂音器或其它声音装置。而且,图中还示出了传感器API330,其可操作接收来自设在标识和标签打印机108上的传感器装置的信息,例如标识间隙传感器和标识标记传感器,并且可操作判断各种条件,例如到达标识的末端时,到达色带的末端时以及几乎到达标识和色带的末端时。在一种实施方式中,传感器API330工作以在这些条件的一个或多个确定发生时发出报警。图3中显示的其它API302包括事件API332、位处理API334和错误处理API336,其中事件API332接收和处理发生在标识和标签打印机108中的各种事件,位处理API334在必要时可操作实现数据位操作,错误处理API336可操作处理可能发生在标识和标签打印机108的错误,例如断电、存储错误、卡纸或类似错误。因此,根据优选实施方式,开发多个API302,例如用LUA程序设计语言或C程序设计语言开发,并且在标识和标签打印机108中实现而且无需解释器通过现有的控制语言如SBPL或ZPL访问打印功能。除了图3中举例说明的API302以外,根据一个或多个实施方式还实现在此设想的各种其它的辅助功能。例如,支持复制表和/或原表(metatable)的功能以实现开发的快速和轻松。其它的实施例包括用于判断错误编码值的功能作为翻转的错误字符串值的功能(例如,“errfstH)”)、用于在一个或多个复数格式(例如XML,LUA或其它)中存储表的功能、以及用于载入提供在复数格式中的表的功能,并支持用于菜单和提示的多种书面语言和口语。图4中举例说明了根据一优选实施方式提供、采用API302定义以及由标识和标签打印机108打印的标识400的实施例。如图4所示,定位点402被定义在上面最左边(如通过hMag和vMag变量值定义)、打印在标识400上的文本数据的位置,即使打印的文本数据有各自方向或位置。图4也示出了当标识400通过标识和标签打印机108打印时的进纸方向404。除打印在标识400上的文本数据之外,还提供图形图像406,例如通过打印绘制API308绘制。图5举例说明了用于定义在标识400上的数据域500的数据域尺寸实施例并指示了用于数据域500的上面最左边角落的各自的水平和垂直位置502(“hPos”和“vPos”)和用于下面最右边位置504的水平和垂直位置。此外,数据方向函数506(如dir(0,359))指示了输出在标识400上的数据域500的相关方向。图6举例说明了根据一优选实施方式提供的采用API302定义以及由标识和标签打印机108打印的标识600的实施例。在图6中示出的标签600的实施例中,示出了在标识600上的在各自位置608上采用的多种颜色602,604和606。因此,如在此示出和描述的,LUAAPI是与标识和标签打印机108的固件和LUA解释器共同工作的接口,这些API通过LUA解释器实现,用户能够创建实现优选打印操作的LUA应用程序。现参考图7,在一优选实施方式中,标识和标签打印机108具有两种类型的存储闪存702和同步动态随机存取存储器(SDRAM)704。闪存702(优选替代ROM使用)用于存储,在其它合适的数据中,标识和标签打印机108的启动代码,基础固件(例如驱动器、条形码格式或类似物),LUAAPI和LUA虚拟机。在现有技术中已知的,在打印机108启动过程期间,存储在闪存702中的启动代码工作。在优选实施方式中,标识和标签打印机108的基础固件和LUAAPI以压缩格式存储在闪存702中,因而闪存702中保留有存储空间。在标识和标签打印机108启动过程之前,SDRAM704优选主要是空的,并准备接收数据。如在图8中举例说明的,当标识和标签打印机108启动时,标识和标签打印机108的固件,LUAAPI和LUA虚拟机优选以压缩格式存储在闪存702中。在启动过程之后,解压上述固件、LUAAPI和LUA虚拟机并且以未压缩格式提供到SDRAM704。此后,标识和标签打印机108的基础固件、驱动器、条形码,标识格式,解析器、图像缓冲区和其它数据在适当的时候临时性地存储在SDRAM704中以实现操作。参考图9,LUA虚拟机优选通过SDRAM704与打印机108的固件、LUAAPI和解析器一起工作。这样根据优选实施方式,标识和标签打印机在打印工作期间不专门依赖闪存702相反而是通过存储在SDRAM704上的未压缩数据和指令工作以实现操作。该实施方式比典型的现有技术系统和方法更好,因为SDRAM704比闪存702工作的更快更有效率,并且SDRAM704能够在打印机操作完成之后清除未压缩的数据和指令。参考图9和图10,在打印工作期间,在此提供的与教导相关的LUAAPI通过LUA虚拟机工作,并且与标识和标签打印机108固件交互以输出存储在标识和标签打印机108的缓存中的标识图像或其它对象。优选地,标识和标签打印机108能优选地通过LUAAPI定义的多个输入源接收指令(如通过LUAAPI)和/或数据。例如,数据能通过任何合适的输入端口被扫描、打字或以其它方式提供和接收,所述合适的输入端口包括输入装置212,通信端口,网络接口20或类似模块。因此,如在此描述和请求的,同时如附图所示,由标识和标签打印机108具有的功能优选被增强、修改或增加为与打印机108的固件交互的API302的功能。应用优选使用高级程序设计语言定义,如LUA程序设计语言,因而避免了个人熟悉打印机模型固件专用程序设计语言或者访问专用开发工具以修改打印机固件的需要。因此,打印机能够用于应用开发并且无需使用打印机专用解释语言编写应用。虽然本发明的描述和图示与其特定的实施方式相关,但是许多其它的变化以及修改以及其它的使用对本领域技术人员来说是显而易见的。因此本发明优选不限于在此的具体公开的内容。权利要求1.一种修改具有固件的打印机的功能以控制打印操作的方法,所述方法包括开发第一程序码,所述第一程序码在计算机可读介质上运行时,与所述打印机固件交互和修改所述打印机的功能,其中所述第一程序码以第一程序设计语言编写,并且其中进一步地所述固件以第二程序设计语言而不是所述第一程序设计语言编写;在计算机可读介质上运行所述第一程序码并且所述第一程序码与所述固件交互;并且修改所述打印机的功能作为所述第一程序码运行以及与所述固件交互的功能,其中所述交互并不修改所述固件。2.如权利要求1所述的方法,其中所述打印机是标识和标签打印机。3.如权利要求1所述的方法,其中所述第一程序设计语言是脚本语言。4.如权利要求3所述的方法,其中所述脚本语言是LUA。5.如权利要求4所述的方法,其中运行所述第一程序码进一步包括在LUA虚拟机中解释所述第一程序码。6.如权利要求1所述的方法,其中所述第一程序码包括至少一个应用程序接口。7.如权利要求6所述的方法,其中所述至少一个应用程序接口包括一个或多个键盘应用程序接口,显示应用程序接口,打印绘制应用程序接口,文件系统应用程序接口,射频识别应用程序接口,实时时钟应用程序接口,配置应用程序接口,通信应用程序接口,装置应用程序接口,打印机状态应用程序接口,XML解析应用程序接口,纸处理应用程序接口,声音应用程序接口,传感器应用程序接口,事件应用程序接口,事件应用程序接口,位处理应用程序接口,以及错误处理应用程序接口。8.如权利要求1所述的方法,其中所述第一程序码除在所述打印机上之外在计算装置上是可测试的。9.如权利要求1所述的方法,其中所述第一程序码在集成开发环境开发。10.一种修改打印机功能的系统,所述系统包括打印机,所述打印机具有打印机功能;固件,所述固件使用第一程序设计语言编写并且设置在所述打印机上,所述固件在所述打印机上运行时控制打印操作;第一程序码,所述第一程序码使用第二程序设计语言而不是第一程序设计语言编写,并且所述第一程序码在计算机可读介质上是可运行的,其中所述第一程序码包括用于修改打印机功能的命令;以及计算机可读介质,所述第一程序码在所述计算机可读介质上运行;其中,当所述第一程序码在所述计算机可读介质上运行时,所述第一程序码和所述固件交互以修改所述打印机的功能,并且其中进一步地所述第一程序码与所述固件的交互不修改所述固件。11.如权利要求10所述的系统,其中所述打印机是标识和标签打印机。12.如权利要求10所述的系统,其中所述第二程序设计语言是脚本语言。13.如权利要求12所述的系统,其中所述脚本语言是LUA。14.如权利要求13所述的系统,其中所述第一程序码的运行进一步包括在LUA虚拟机上解释所述第一程序码。15.如权利要求10所述的系统,其中所述第一程序码包括至少一个应用程序接口。16.如权利要求15所述的系统,其中所述至少一个应用程序接口包括一个或多个键盘应用程序接口,显示应用程序接口,打印绘制应用程序接口,文件系统应用程序接口,射频识别应用程序接口,实时时钟应用程序接口,配置应用程序接口,通信应用程序接口,装置应用程序接口,打印机状态应用程序接口,XML解析应用程序接口,纸处理应用程序接口,声音应用程序接口,传感器应用程序接口,事件应用程序接口,事件应用程序接口,位处理应用程序接口,以及错误处理应用程序接口。17.如权利要求10所述的系统,其中所述第一程序码没有所述固件的情况下编写。18.如权利要求10所述的系统,进一步包括用于开发所述第一程序码的集成开发环境。19.一种修改具有固件的打印机的功能以控制打印操作的方法,所述方法包括开发第一程序码,所述第一程序码在计算机可读介质上运行时,与所述打印机固件交互并且修改所述打印机的功能,其中所述第一程序码以第一程序设计语言编写,并且其中进一步地所述固件以第二程序设计语言而不是所述第一程序设计语言编写;以压缩格式将所述第一程序码和所述固件存储在所述打印机上的第一存储器上;当启动所述打印机时,将所述压缩的第一程序码和所述固件解压到所述打印机上的第二存储器上;在所述第二存储器上运行所述第一程序码和所述固件并且所述第一程序码与所述固件交互;以及修改打印机的功能作为所述第一程序码运行以及与所述固件交互的功能,其中所述交互不会修改所述固件。20.如权利要求所述19的方法,其中所述第一存储器是闪存。21.如权利要求所述的19的方法,其中所述第二存储器是SDRAM。22.—种修改打印机功能的系统,所述系统包括打印机,所述打印机具有打印机功能;固件,所述固件使用第一程序设计语言编写并且设置在所述打印机上,当所述固件在所述打印机上运行时控制打印操作;第一程序码,所述第一程序码使用第二程序设计语言而不是第一程序设计语言编写,并且所述第一程序码在计算机可读介质上是可运行的,其中所述第一程序码包括用于修改打印机功能的命令;第一存储器,所述第一程序码和所述固件以压缩格式存储在所述第一存储上;第二存储器,所述第一程序码和所述固件在所述第二存储器上运行;其中当所述打印机启动时,在所述第一存储器上的所述压缩的第一程序码和固件解压到所述第二存储器上;其中当所述第一程序码和所述固件运行在所述第二存储器上时,所述第一程序码和所述固件交互以修改所述打印机的功能,并且其中进一步地所述第一程序码与所述固件的交互不会修改所述固件。23.如权利要求22所述的系统,其中所述第一存储器是闪存。24.如权利要求22所述的系统,其中所述第二存储器是SDRAM。25.—种修改具有固件的打印机的功能以控制打印操作的方法,所述方法包括开发第一程序码,所述第一程序码在计算机可读介质上运行时,与所述打印机固件交互并修改所述打印机的功能,其中所述第一程序码以第一程序设计语言编写,并且进一步地其中所述固件以第二程序设计语言而不是所述第一程序设计语言编写;将所述第一程序码存储在所述打印机内的第一存储器上;在所述第二存储器上运行所述第一程序码和所述固件并且所述第一程序码与所述固件交互;以及修改打印机的功能作为所述第一程序码运行以及与所述固件交互的功能,其中所述交互不会修改所述固件。26.—种修改打印机功能的系统,所述系统包括打印机,所述打印机具有打印机功能;固件,所述固件使用第一程序设计语言编写并且所述固件提供在所述打印机上使得所述固件在所述打印机上运行时控制打印操作;第一编码程序,所述第一编码程序使用第二程序设计语言而不是第一程序设计语言编写的第一程序码,并且所述第一程序码在计算机可读介质上是可运行的,其中所述第一程序码包括修改打印机功能的命令;第一存储器,所述第一程序码和所述固件存储在所述第一存储上;第二存储器,所述第一程序码和所述固件在所述第二存储器上运行;其中当所述第一程序码和所述固件在所述第二存储器上运行时,所述第一程序码和所述固件交互以修改所述打印机的功能,并且进一步地其中所述第一程序码与所述固件交互不会修改所述固件。全文摘要本发明提供了修改具有用于控制打印操作的固件的打印机的功能的方法和系统。开发第一程序码使得所述第一程序码在计算机可读介质上运行时与打印机的固件交互并且修改打印机的功能。所述第一程序码使用第一程序设计语言编写,例如LUA程序设计语言,并且所述固件使用第二程序设计语言而不是第一程序设计语言编写。此后,第一程序码运转在计算机可读介质上,并且修改打印机的功能作为与所述固件交互的运行的第一程序码的功能。所述交互不会修改所述固件。文档编号B41J29/38GK102202904SQ200880131719公开日2011年9月28日申请日期2008年10月27日优先权日2008年10月27日发明者L-A·伯格,M·赫德伯格申请人:株式会社佐藤,株式会社佐藤知识财产研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1