用于打印机仿真的系统和方法

文档序号:6351926阅读:344来源:国知局
专利名称:用于打印机仿真的系统和方法
技术领域
本发明一般涉及打印机,更具体地涉及提供精确打印仿真和预览功能。
背景技术
使用计算装置来准备电子文件(例如,标签、文献、数据报告,或者其它格式的输出)仍旧是普遍的。在将电子文件或者其它电子信息输出到诸如打印机的输出装置之前,用户希望能预览打印出的文献是什么样子。许多现有技术的软件程序提供了“打印预览”特征,用于在计算装置的显示屏上显示打印输出的预览呈现。公开号为H06-110626、名称为“PRINTER AND PRINTING SYSTEM USING THE SAME(打印机以及使用该打印机的打印系统)”的日本专利详细描述了打印机预览方案的实例,该申请全文被通过引用合并于此。引用列表 专利文献PTLl :公开号为H06-110626的日本专利

发明内容
技术问题对于打印预览功能的另外需求存在于软件开发者和程序员,其编写使用打印机或者生成其它打印输出的应用。然而,打印预览功能通常不能精确地呈现实际的打印结果。这经常是因为计算装置不能正确且精确地仿真实际的打印机环境。例如,用户在计算装置上创建特定且之前未知的字形字体,且在用户的文字处理软件准备的文件中使用所述字体。连接到计算装置上的打印装置没有关于所述字体的任何记录。因此,当用户选择打印预览选项时,计算装置在显示装置上显示所述字体。然而,当用户向打印机输出使用所述字体的打印任务时,打印机不能生成所述字体。因此,计算装置所提供的打印预览选项是不精确的。在现有技术中为了精确地预览打印输出,用户不得不物理打印出文件或者其它输出,或者需要联接到打印机上。这浪费了纸张或者有价值的其他打印介质,消耗了时间,和/或限制了用户的开发环境。对于打印标签而言,尤其需要对打印输出的精确预览。打印出的标签会继续用于多种应用中,包括用于装运和邮寄、医疗样本瓶、杂货店和产品目录等。不幸的是,例如H06-110626所描述的先前的方案需要用户将打印装置连接到计算装置上。此外,连接的打印装置要求在打印机图像缓冲器中展开打印图像的特定固件,其被发送回计算装置用以显示。这导致浪费打印机存储资源。解决问题的方案在工业中用户存在对打印出的事物精确呈现进行预览的需求,而不需要连接打印
>J-U ρ α装直。因此,提供用于在未与打印机连接的计算装置上精确仿真打印机的系统和方法。所述计算装置设置有固件和与所述固件接口用于定制打印操作的编程代码。此外,为所述打印机和所述计算装置提供固件,作为至少一个相应应用编程接口的结果,所述固件能够在所述计算装置和所述打印机的每一个上运行。可以为打印机提供一个应用编程接口,而为计算装置提供另一个应用编程接口,或者为计算装置和打印机提供相同的应用编程接□。本发明的有益效果为计算装置提供编程代码,且计算装置运行所述编程代码。编程代码与为计算装置提供的固件接口,并且当打印机运行编程代码时使得计算装置仿真打印机。此外,计算装置和打印机未连接。根据以下参照附图对本发明的描述,本发明的其它特点和优点将变得清晰。


为了阐释本发明,在附图中示出了当前优选的形式,但是应该理解的是,本发明并不局限于所示出的确切布置和手段。根据以下参照附图关于本发明的描述,本发明的特征和优点将变得清晰,在附图中图I示出根据本发明的示例性硬件布置,用于在通信网络中开发和仿真打印环境。图2示出图I中所示的示例性信息处理器和/或用户工作站的功能元件。图3为示出为信息处理器提供的用于开发和/或使用打印机应用的软件部件的方框图。图4为示出为打印机提供的用于开发和/或使用打印机应用的软件部件的方框图。图5示出了在信息处理器上显示并且呈现应用开发器的示例性实施例的示例性显示屏。图6示出了根据实施例的示例性显示屏,用于上载或者集成用户数据源,所述数据源用于集成到打印应用中。图7示出了集成了待并入到标签中的数据的示例性数据标签布局。图8示出了呈现应用开发器的使用并可在信息处理器上操作的示例性显示屏。图9示出了呈现应用开发器的使用并可在信息处理器上操作的示例性显示屏。图10示出了物理标签和标记打印机以及虚拟打印机仿真器之间的类似性。图11示出了虚拟打印机仿真器的示例性显示屏和根据优选实施例所提供的对应的预览标签输出。图12示出了虚拟打印机仿真器的示例性显示屏和根据优选实施例所提供的对应的预览标签输出。图13示出了虚拟打印机仿真器的示例性显示屏和根据优选实施例所提供的对应的预览标签输出。图14为示出了可以包含于示例性实施例中并用于提供共享固件的示例性部件的方框图。图15示出了根据实施例的额外的示例性硬件布置。图16示出了根据实施例的额外的示例性硬件布置。
图17是示出了呈现与从用户处接收用于定制标签应用的命令并履行该命令相关的过程的步骤的流程图。
具体实施例方式实例I在优选实施例中,作为可经由一个或者多个应用程序接口(API)操作且具有定制和扩展功能的共享打印机固件的功能,打印机被仿真。在优选实施例中,解释性脚本语言LUA被用于生成固件并经由集成开发环境提供定制打印应用。根据本发明,在运行于计算装置上的集成开发环境中提供在打印机上开发且操作的打印机固件、一个或者多个打印机API和/或打印机软件应用中的至少一个。优选地,集成环境包括图形用户界面,其至少在外观上仿真打印机设置的控制面板。因此,在打印机上运行的一个或者多个软件程序(例如,打印机固件、软件应用和打印机API)加载在计算装置上且在集成环境中运行。因为在打印机上运行的相同软件(例 如,固件、API和/或应用)也在计算装置上运行,所以打印机软件和图形用户界面的集成为用户提供了对打印输出的精确打印预览呈现。优选地,将一个或者多个打印机API设计为在打印机自身以及计算装置(例如,运行MICROSOFTWindows操作系统的个人计算机)上执行应用程序和共享固件,由此能够对打印机进行真实的仿真。此处的教导提供了一种新的且非显然的打印机仿真,至少因为注入代码(injected code)用于经由一个或者多个API访问开发的打印机软件应用和/或共享固件的任意部分。因此,此处的教导包括以如同在实际的物理打印机上运行的相同方式在计算装置上有效运行的软件。用户,尤其是用于相应打印机的软件的具体开发者,在用户显示装置上观察打印机功能的准确呈现以及打印输出的准确预览,即使显示装置是独立于物理打印机而设置的。这样,开发环境不会具有上述现有技术的打印预览功能的缺点。在实施例中,打印机应用是通过LUA写的,LUA是独立于平台的语言且由C程序语言开发的。与LUA的计算机和打印机交互是通过诸如C API的接口实现的。通过使用C API,基于LUA的操作在各种平台上以相同的方式执行,所述平台包括打印机平台和计算(例如,MICROSOFT Windows)平台。为了实现在计算装置上的精确打印机仿真,C API在两种平台上应当起到类似或者相同的作用。在计算装置上,例如在运行MICROSOFT Windows操作系统的个人计算装置上,操作系统提供文件系统。根据此处的教导,为打印装置提供文件系统API。优选地,文件系统API用于两种平台(例如,计算装置和打印装置)上,以确保当软件应用在各个平台上执行时的相同行为。优选地,计算装置和打印装置均设置有LUA虚拟机(现有技术中已知的)和C API,从而当软件应用例如经由存储卡、USB连接装置、通过网络传送等加载到任一平台时,C API识别出所述应用并且所述应用一致地运行。因此,所述应用在计算装置上以与在打印装置上相同的方式运行,由此消除了需物理上将打印装置连接到计算装置以在应用运行时对其进行观察的必要性。此处的教导还消除了现有技术的以下负担不得不物理地打印出标签或者其它输出以观察打印输出将呈现何种样子。例如,快餐连锁店的所有者需要对连锁店的多家餐馆中的每一家创建相应格式的标签。所有者根据此处的教导使用集成开发平台来设计和预览标签。之后,所有者将标签设计分发到连锁店中的每一家以生成标签。在每一家餐馆处输出的标签可以被所有者精确地预览。即使所有者没有物理地访问餐馆中所使用的打印机,但所述预览是精确的。因此,标签制造工作流比现有技术的标签制造工作流更为有效。此夕卜,在计算装置上运行的集成环境不需要打印机连接到计算装置上以将图片数据传输回计算装置。因此,节省了打印机的存储资源。
在优选实施例中,集成开发环境包括图形用户界面,其用于设计和/或开发诸如标签的输出。优选地,集成开发环境,例如用于为标签和标记打印机设计数据标签,与提供打印机的虚拟呈现(例如,打印机控制面板)的图形用户界面结合设置。集成开发环境和/或呈现打印机的图形用户界面优选包括打印机固件和由打印机执行的一个或者多个应用。因此,提供应用开发工具,其在诸如个人计算机的计算装置上运行,并且包括便于在打印装置上运行或者由打印装置运行的程序应用开发的脚本和/或编码库。这通过多方提供了改善的连接能力,例如用于分散的和“局域化”的应用开发。这样,许多编程者能够远离集中的办公室而远程办公,并且不必为了生产特定顾客需要而定制和/或特制的应用而靠近终端用户和顾客。这导致较短的交付周期,所述交付周期表示从客户端要求的时间到程序被部署且由顾客使用的时间。此处的系统和方法进一步增强了与顾客和开发者的关系。优选地,格式化输出(例如打印出的标签)的开发者利用此处的教导来开发用于格式化输出的应用。为开发者提供打印出的输出的精确虚拟或显示呈现,以及将生成输出的相应输出装置(例如,打印机)的虚拟呈现。例如,为开发者提供的图形用户界面包括对于用于终端用户打印标签的打印机提供的打印机控制面板的呈现(例如,IXD和键盘/键区)。这样,开发者能够测试特定打印机或其它输出装置将如何响应终端用户。例如,开发者能够预览打印机响应于终端用户所选的一个或者多个键如何应对。此外,响应终端用户所选的一个或者多个键,为开发者提供与打印装置一起提供的液晶显示器(LCD)或者其它显示器的精确呈现。另外,为开发者提供打印机将要提供的物理输出的精确呈现。这样,此处的教导仿真并精确呈现打印装置的输出结果,以及开发者计算装置上的打印机键操作和LCD或者其它显示器结果。这通过提供打印装置中的固件和开发者计算装置能够至少部分的实现。这样,将精确呈现物理输出(即,打印)环境,而无需将输出装置或者打印机物理地联接到开发者计算装置上。对于开发者而言另一优点在于,当开发应用(或注入)功能时,调试是在计算机上完成的,由此消除或者减少了耗时的下载和测试打印。因此,通过包括打印机固件源代码和开发者计算装置,可以提供多种打印方案,以精确地呈现例如为所有者打印机控制和操作开发的软件的结果。现在参照附图,其中相同的附图标记表示相同的元件。图I示出了根据实施例的示例性硬件布置,用于在通信网络中开发和仿真打印环境,在本文一般称为系统100。系统100优选地包括至少一个信息处理器102,其可以被配置为运行为互联网服务器和数据库文件服务器,并被编程且配置为访问通信网络106和与用户工作站104通信。用户工作站104和信息处理器102可以经由已知的通信协议(传输控制协议/互联网协议(TCP/IP))进行通信。在图I所示的实例中,信息处理器102设置有本领域技术人员公知的集成开发编程环境(IDE),从而用LUA编程语言开发应用。信息处理器102设置有或者具有对支持此处的教导所必需的所有数据库的访问权。信息处理器102优选地还设置有安装在打印机108上的打印机固件。然而,可以预期的是,信息处理器102和/或用户工作站104能够经由通信网络106或者信息处理器102可联接的任何通信网络来访问要求的任意数据库。通信网络106优选地例如互联网的全球公用通信网络,但是还可以是广域网(WAN)、局域网(LAN)、企业网或者使得计算装置和周边装置能够通信的其它网络。在优选实施例中,信息处理器102和用户工作站104可以是能够通过通信网络106发送和接收数据的任何计算机可读介质装置,例如,大型计算机、迷你计算机、个人计算机、膝上计算机、个人数字助理(PDA)、蜂窝电话以及诸如网络TV的互联网访问装置。另外,信息处理器102优选地装备有网页浏览器软件,例如MICROSOFTINTERNET EXPLORER、MOZILLAFIREF0X等。信息处理器102利用任意已知的数据通信网络技术联接到通信网络106上。图I还示出了打印机108,其优选是标签和标记打印机,能够打印接收自信息处理器102的数据的标签和标记。打印机108可以设置有键盘和显示器,从而除了信息处理器102、没有信息处理器102或者结合信息处理器102而激活打印机108的输入和输出功能。键盘110优选地能够运行以接收和解释(即,读取)来自使用打印机108的用户的信号。键盘可以是外部键盘或者是不直接联接到打印机108上的其它输入装置。此外,显示器112优选地设置为运行以呈现打印机108上的多种文字和图片内容。显示器可以是附着到打印 机108上的外部显示器(未示出)。优选地,显示器112支持例如用于多种不同书面语言的字体和编码类型的多种选择。图2示出示例性信息处理器102和/或用户工作站104的功能元件,包括一个或者多个中央处理单元(CPU)202,其用于执行软件编码并控制信息处理器102的操作。其它元件包括只读存储器(ROM) 204、随机存取存储器(RAM) 206、通过通信网络传送数据到其它计算装置或者从其它计算装置接收数据的一个或者多个网络接口 208、用于存储编程代码数据库和应用数据的存储装置210 (例如,硬磁盘驱动器、软磁盘驱动器、磁带驱动器、CD ROM或者DVD)、一个或者多个输入装置212 (例如,键盘、鼠标、轨迹球、麦克风等),以及显示器214。此外,还可以为打印机108设置或者适当配置一个或者多个功能性元件202-214。信息处理器102和/或工作站104的各种部件不需要物理包含于同一底架中或者甚至位于单一的位置上。例如,存储装置210可以位于远离信息处理器102的剩余元件的位置,甚至可以经由网络接口 208通过通信网络106连接到CPU 202上。信息处理器102和/或用户工作站104优选包括存储器,其装备有足够的存储器以提供必需的数据库、论坛、其它社会服务,并用作用于通信超文本标签语言(HTML)、Java applet、Active-X控制程序的网页服务器。信息处理器102和/或用户工作站104布置有例如如图2所示的适于期望的操作环境的部件。CPU202、网络接口 208和存储器及储存装置被选择以确保容量安排成容纳期望的要求。本发明的本质在于,编写计算机可执行代码(S卩,软件)的领域内的技术人员能够利用一个或者多个结合的流行计算机编程语言、脚本语言和开发环境实现此处描述的功能,所述开发环境包括但不限于 LUA、C、C++、C#、Visual Basic、JAVA、HTML、XML、ACTIVESERVER PAGES、JAVA server pages、servlets、MYSQL 以及 PHP。虽然通过此处的实例以及利用网页浏览器和网站服务器的基于网页的系统(例如,信息处理器102)描述了本发明,但是系统100并不限于这种配置。可以想到的是,系统100被布置为打印机108利用任何已知的通信方法(例如,利用非互联网浏览器的WINDOWS观察器,其与诸如互联网包交换协议(IPX)、交换、第三方、专用网络或增值网络(VAN)的局域网协议联接)与信息处理器102和/或用户工作站104进行通信,并输出从信息处理器102和/或用户工作站104处接收到的数据。还可以想到的是,在信息处理器102上可以使用任何适合的操作系统,例如,DOS、WINDOS 3. X, WINDOWS 95, WINDOWS 98, WINDOWS NT, WINDOWS 2000, WINDOWS ME, WINDOWSCE、WINDOWS POCKET PC, WINDOWS XP, MAC OS、UNIX、LINUX、PALM OS、POCKET PC 以及其它适当的操作系统。在优选的实施例中,打印机108应用是用LUA编程语言开发的。根据优选实施例,包括LUA翻译机,其运行以处理应用中提供的LUA编程语句。不像典型的高级编程语言,LUA是脚本语言而不是基础编程语言。此处的教导实现了对LUA编程语言扩展的打印机API,其与打印机固件接口并且由LUA翻译机翻译。这使得能够开发更先进和复杂的应用,例如经由函数调用。此外,通过实现作为LUA编程语言的扩展的API,可以修改打印机108的部分功能,这与现有技术的标签和标记打印机相反,其为了实现单独的改变需要对其相应的固件应用进行完整的重写。图3和图4为示出分别与信息处理器102和打印机108 —起提供的用于开发和/ 或使用打印机应用的软件部件的方框图。在图3中,信息处理器102由框102所表示,其包括操作系统302 (例如,MICROSOFT WINDOWS)。应用开发器304例如包括用于开发新的或者修改现有打印机应用的集成开发环境,所述打印机应用例如是LUA编程语言所开发的且可配置到用于打印诸如标签的格式化输出的一个或者多个打印机108。信息处理器102进一步包括虚拟打印机仿真器306,其可操作以提供对打印机108的虚拟呈现,所述打印机108执行例如经由应用开发器304在信息处理器102上开发的打印机应用。如上所述,打印机108的固件优选地设置有信息处理器102,信息处理器102使得仿真器306能够精确地呈现打印出的输出以及在执行应用时打印机108工作的方式。此外,信息处理器102包括API和打印机应用310。在图4中,例如标签和标记打印机的打印机108由框108表示,其包括对于打印装置特定并且不与信息处理器102共享的固件312,。打印机108还设置有对打印机108而言特定的共享固件308,其还在信息处理器102上运行,并使得打印机仿真器306精确。如上所述,打印机108的固件优选地提供给信息处理器102,所述信息处理器102使得仿真器306精确呈现打印出的输出以及在执行应用时打印机108起作用的方式。此外,打印机108包括API和打印机应用310。在优选实施例中,信息处理器102设置有应用开发器304和打印机仿真器306,其例如能够使得软件开发器编写用于打印机108的打印应用。图5示出了在信息处理器102上显示并且呈现应用开发器304的示例性实施例的示例性显示屏400。在图5所示的实例中,应用开发器304被提供作为集成开发环境(IDE),并用于开发标签应用,用于输出打印机108上的多个标签。如图5所不,表格区402提供一个或者多个数据表格的列表,所述数据表格存储待被打印到标签上的信息。选项区404包括额外应用开发选项,包括用于数据字段输入、标签格式(layout)选项以及数据源。在图5所示的实例中,选项“表格”406被选中。继续参照图5,标签格式区408包括交互式图形屏幕控制件,其提供用于设计待在例如打印机108上输出的标签的选项。在图5所示的实例中,标签被设计为用于零售公司并且相应的标签被开发用于产品,AGAM。除了别的外,对于字体、线、框等提供了选项。数据表格区410包括用于包含在设计标签中的各个信息表格的显示。在优选实施例中,将数据表格或者其它格式化的信息源提供给信息处理器102,例如经由FTP、e-mail、物理盘或者驱动等。这样,能够管理分散的表格数据源,而不需要表格应用程序员物理地位于最终打印和/或使用标记的位置附近。继续参照图5,为信息处理器102的用户提供代码生成区412以编写包含于打印应用中的编程代码。在图5所示的实例中,显示出LUA编程语句,所述语句被用于提供将包含于标签中的颜色选项。在图形标签开发平台中集成编程代码开发为开发者提供了方便的选择,能够准确且快速地开发打印应用。此外,属性区414包括用于控制外观和出现在打印输出(例如,标签)中的数据的选项。在图5所示的实例中,词语“Agam”在属性区414中被选中并被识别为字体=Snans粗体、12磅因、X Y坐标为153,86,并且用于标签的数据来自诸如在表格去402显不的表格。因此,如示例性显示屏400所示,呈现应用开发器304的集成开发环境可用于开发用于诸如标签的格式化打印输出的应用。
如此处所述,在现有技术中是通过必须物理上彼此靠近的几方来开发用于诸如定制数据标签的打印的编程应用的。开发者需要访问终端用户的数据,并且物理上连接到终端用户的打印装置108以便在必要时测试输出和修改应用。根据此处的教导,开发者不再需要与终端用户的打印机108进行物理上的捆绑,而是可以远程开发打印应用,该打印应用与终端用户的数据集成,并且还可以远离终端用户的位置而被测试和评估。图6示出了用于上载或者集成用于打印应用的用户数据的示例性显示屏500。数据包区502示出了应用开发者可用的示例性选项,并且包括用于格式化、数据源、图像、轮廓(profile)、字体、其它选项以及系统选项的选项。其它选项可以包括用于不同语言的翻译表格、提供快速访问可选资源的功能键支持(例如,F1)、预先定义的设定和电源故障存储器(包括用于累积值的存储器)。表格区504示出了已经从示例性客户端引入的示例性数据表格,其包括用于产品代码、产品名称。制造商代码以及颜色代码的数据。一旦被引入,所述数据就可以用于例如数据标签的定制打印应用,并且进一步被用于示例性客户。图7示出了打印例如在表格区504 (图6)中示出的表格所提供的数据的示例性数据标签布局600。如图7所示,提供了并入多种数据值(例如,制造代码、颜色代码和产品代码)的条形码。此外,数据标签并入书面词语,以便呈现所述书面词语。另外,定制标识可以包含于标签中并从客户公司引入。图8示出了呈现应用开发器304的另外使用并可在信息处理器102上运行的示例性显示屏700。在图8示出的实例中,应用开发器304用于开发用于食物提供商的数据标签。如表格区410所示,所示出的数据用于食物,并包括苹果派、熏肉和其它食物。为每种食物解冻需要的时间量、特定食物存放期有多长等提供相应的数据。在标签格式区408中,数据的第一行中的某些数据被示出用于苹果派。程序员所选的用于包含于标签中的各个数据字段为食物的名称、“撤架(pull)”日期和时间、“解冻”日期和时间,以及“丢弃”日期和时间。当客户打印数据标签时,在标签中输出来自数据表格区410的各行数据中的每一行的相应信息。在示例性显示屏700中,未显示代码生成区412,这进一步显示了应用开发器304的灵活性。例如,通过简单地由用户选择一个或者多个图形屏幕控制件(例如,复选框、标记、单选按钮等),可以显示或者隐藏应用开发器304的区408、410、412等。图9示出了呈现应用开发器304的另外使用并可在信息处理器102上操作的示例性显示屏800。在图9示出的实例中,应用开发器304用于开发用于运动设备零售商的数据标签。在示例性显示屏800中,用户正在设计包括多个成分的数据标签,所述成分包括产品图像、条形码、商标描述、产品描述、原销售价、当前销售价。此外,标签优选是以图形上很吸引人的方式来格式化的,包括具有斜纹文本输出、相应字体和磅因尺寸等。在示例性显示屏800中,未显示数据表格区410和代码生成区412。通过使得用户关掉这些区的显示,用户能够集中精力于标签图形开发,而没有混乱的数据和编程代码占用显示屏800。如上所述,除了应用开发器304,还包括软件,所述软件在信息处理器上以与设置有实际的物理打印机108的软件相同的方式有效运行。这使得即使显示装置远离物理打印机,用户也能够在用户的显示装置上观察打印机的精确呈现以及打印输出的精确预览。图10示出了物理打印机108以及打印机仿真器306之间的类似性。在图10的左 侧示出了打印机108,其包括键盘110和显示器112。类似地,打印机仿真器306包括对打印机108的虚拟呈现,其包括区110和区112。在优选实施例中,打印机仿真器306内的所有控制件和显示器如同在打印机108上一样的运行,并作为共享固件308的函数精确地这样工作,固件308设置在打印机108和仿真器306之上。图10还示出了经由应用开发器304提供的实例应用,其优选地包括可以经由键盘110选择的显示器112中的提示符。图11至图13分别示出了打印机仿真器306的示例性显示屏1002、1006和1008以及根据优选实施例所提供的对应的预览标签输出。如图11至13所示,打印机仿真器306设置在显示屏1002、1006和1008的左侧部分,而预览标签输出1004设置在右侧部分。显示屏1002、1006和1008中的每一个呈现为不同用户输出标签的打印机108的虚拟呈现。例如,显示屏1002呈现为运动设备提供商而产生的标签。显示屏1006呈现为食物提供商而产生的标签,而显示屏1008呈现为零售店而产生的标签。示例性显示屏1002、1006和1008中的每个示出根据此处教导而提供的输出,包括用于多个标签(如显示屏1002所示)、多个标签类型(如显示屏1006所示),以及用于多种产品的标签(如显示屏1008所示)。在区1004中显示的输出是对打印机108待产生的实际输出的精确呈现,至少是设置在信息处理器102和打印机108 二者上的共享固件的结果。图14为示出了可以包含于示例性实施例中并用于提供共享固件308的示例性部件的方框图1100。如图14所示,提供标准LUA API1102和定制LUA打印机API 1104,它们与LUA虚拟机(VM)1106交互。在打印机引擎区1108中,列出了与打印机108相关的部件,包括电动机控制件、传感器控制件和热打印头(TPH)控制件。在装置区1110中,列出了通信接口(I/F)、键盘和显示器。渲染引擎区1112包括字体缩放器、字体包装器、代码页、图像、条形码包装器和线条。条形码库区114可以进一步包括位图字体和用于各条形码的渲染。文件系统区116优选包括只读存储器(ROM)、随机存取存储器(RAM)、闪存驱动器以及安全数字(SD)卡包装器。可进一步设置SD卡文件系统1118。另外还包括软件库(C) 120,其包括定制库成分,例如定制书面函数“malloc”和“printf”。另外,在区1122中设置实时操作系统和硬件。这些成分的使用被提供作为用于建立固件的方框,所述固件优选被提供给信息处理器102并可以用于提供精确的打印预览和用于程序员的打印机仿真。图15和图16示出了根据实施例的额外的示例性硬件布置,其中打印机108设置有例如由应用开发器304开发的应用。在图15所示的实例中,示出支持使用桌面打印机108的布置。除了信息处理器102、用户工作站104、通信网络106、打印机108、键盘110和显示器112,还示出磅秤1204,其能用于传输代表待包含于打印机108产生的标签中的食物或者商品重量的信息。此外,扫描仪装置1206可用于获得来自现有条形码的信息,并将所述信息传输到打印机108。其它的数据输入装置包括键盘1208和手持装置1210,其可以是PDA。可以经由信息处理器102提供数据和软件,信息处理器102可以存储经由应用开发器304开发的应用1212以及可以存储用于特定商业顾客的数据的数据库1214。在图15示出的实例中,应用是可以在特定场(例如在杂货店、零售商或其它商业)所运行和使用的,并且与通常位于特定场所的装置接口。打印机108例如经由LUA应用生成标签,其经由LUA翻译机运行并进一步可能与数据库接口。图16示出了在打印中使用并应用(PM)打印环境的硬件布置1216,例如提供生产线标签。设置了生产线1218,其可以包括用于快速且精确传送和/或识别数据的传感器1220。图17的流程图示出了呈现与用于从用户处接收定制标签应用的命令并履行该命 令相关的过程的步骤S100,从而将应用置于生产中。在步骤S102处,过程开始且之后用户正式请求特定的标签应用(步骤S104)。在步骤S106处,例如通过能够从技术方面向程序员描述用户请求的技术人员,可以正式定义用户的请求。该请求被传输到使用应用开发器304以生成定制应用的程序员处。在步骤S108处,程序员使用应用开发器304来例如设计标签格式,创建程序提示符、相关字段和具有数据表格栏的提示符,开发应用和打印机设定程序,和/或集成用于预定义函数(例如,LUA脚本)。程序员可以使用应用开发器304来开发新的应用,或者可选地修改现有的应用。一旦开发了应用,那么将例如经由打印机仿真器306校验所述应用(步骤S110),或者利用物理打印机108校验所述应用(S112)。之后,在步骤S114处,判定是否需要改变应用。如果需要,则所述过程分支返回到步骤S108,并且程序员修改应用。如果不需要,则所述过程分支转向步骤S 116,并且将应用提交给用户,例如通过通信网络106传输、SD卡、压缩盘或其他介质中的文件。用户经由打印机仿真器306或者在打印机108上校验所述应用(步骤S118)。此后,判定是否需要修订所述应用(步骤S120)。如果需要,则所述过程分支返回到步骤S108,程序员修改所述应用,并且所述过程从此处继续。如果不需要,则所述过程分支转向步骤S122,其中用户满意该程序,进行付款并且过程结束。因此,如此处图示和描述的,本发明解决现有技术中的问题,例如涉及打印机仿真和程序开发。通过与打印机和计算装置共享固件,可以获得精确的打印机仿真,包括提供精确的打印输出预览。此外,能够显著缩短用于打印机软件应用的开发周期,并且工程师和程序员不再需要物理地靠近终端用户。为在现有技术中先前无法获得的定制打印方案提供分散的、先进的、快速且经济合算的方案。这至少部分由于使用有力的编程和脚本语言,例如LUA,其能够访问文件系统和与文件系统接口以提供有力的打印机函数、连接功能以及改善的字体和代码页处理。结果是导致最初提供给用户的较短交付周期和更精确的应用方案,这改善且巩固了用户关系。此外,尤其是对于标签而言,现在非常复杂的打印配置是可能的,其可以包括例如多种颜色、标识、数据库信息、条形码以及用于改善的工作流的操作员序列。在访问或者获得用户数据库并定义了用户请求或者要求之后,程序员能够使用此处的教导来设计标签格式,其包括用户数据和用户图形,并且能被快速封装到应用中且传输到用户。此外,可以经由打印机仿真器306校验应用的精确性。在一个实施例中,用户接收本质上没有预定的功能且实质上为“空”机器的打印机。终端用户通过通信网络经由终端用户的计算装置访问且下载打印机应用。之后,打印机执行提供定制功能的编程指令。
虽然通过特定实施例描述和示出了本发明,但是对于本领域的技术人员而言许多其它变化和修改以及其它用途是显而易见的。因此,优选的是本发明并不被此处的特定公开所限制。
权利要求
1.一种用于在计算装置上精确仿真打印机的方法,所述计算装置没有连接到所述打印机上,且设置有固件和与所述固件对接用于定制化打印操作的编程代码,所述方法包括 为所述打印机和所述计算装置提供所述固件,其中作为为打印机提供的或者为计算装置与打印机提供的至少一个相应应用编程接口的功能,所述固件能够在所述计算装置和所述打印机的每一个上运行; 为所述计算装置提供所述编程代码;以及 在所述计算装置上运行所述编程代码,其中所述编程代码与为所述计算装置提供的固件对接,并使得所述计算装置仿真所述运行所述编程代码的打印机,并且进一步地,所述计算装置和所述打印机未连接。
2.如权利要求I所述的方法,进一步包括 为所述打印机提供所述编程代码;以及 在所述打印机上运行所述编程代码,其中当所述计算装置运行所述编程代码时,通过所述计算装置精确仿真运行所述编程代码的所述打印机。
3.如权利要求I所述的方法,其特征在于,所述编程代码是标签生成软件应用。
4.如权利要求3所述的方法,其特征在于,所述计算装置显示由所述编程代码生成的虚拟标签,其中显示出的所述标签与作为运行所述编程代码的所述打印机的功能而打印出的物理标签相同。
5.如权利要求3所述的方法,其特征在于,进一步包括为所述计算装置提供集成开发环境,其中所述集成开发环境为用户配置所述计算装置以开发所述编程代码。
6.如权利要求5所述的方法,其特征在于,所述集成开发环境包括标签格式区,所述标签格式区为用户配置所述计算装置以开发标签格式。
7.如权利要求6所述的方法,其特征在于,进一步包括提供用于标签的信息的至少一个数据源,其中所述集成开发环境进一步为用户配置所述计算装置以在打印装置生成标签时提供标签中的信息。
8.如权利要求6所述的方法,其特征在于,进一步包括为所述集成开发环境提供编程代码编辑器,其中设置有所述编程代码编辑器的所述集成开发环境进一步为用户配置所述计算装置以开发所述编程代码。
9.如权利要求I所述的方法,其特征在于,所述编程代码是以脚本语言编写的。
10.如权利要求I所述的方法,其特征在于,进一步包括在使得所述计算装置仿真所述打印机时显示对所述打印机的呈现。
11.一种用于在计算装置上精确仿真打印机的系统,所述计算装置没有连接到所述打印机上,且设置有固件和与所述固件对接用于定制化打印操作的编程代码,所述系统包括 为所述打印机提供的或者为所述计算装置与所述打印机提供的至少一个相应应用编程接口 ; 为所述打印机和所述计算装置提供的固件,其中作为所述至少一个相应应用编程接口的功能,所述固件能够在所述计算装置和所述打印机的每一个上运行; 为所述计算装置提供的编程代码,其中所述编程代码在所述计算装置上运行,并且与为所述计算装置提供的固件对接,并使得所述计算装置仿真运行所述编程代码的所述打印机,并且进一步地,所述计算装置和所述打印机未连接。
12.如权利要求11所述的系统,其特征在于,所述编程代码进一步是为所述打印机提供的,并且所述打印机运行所述编程代码,进一步地,其中当所述计算装置运行所述编程代码时,运行所述编程代码的所述打印机通过所述计算装置被精确地仿真。
13.如权利要求11所述的系统,其特征在于,所述编程代码是标签生成软件应用。
14.如权利要求13所述的系统,其特征在于,所述计算装置显示由所述编程代码生成的虚拟标签,其中显示出的所述标签与作为运行所述编程代码的所述打印机的功能而打印出的物理标签相同。
15.如权利要求13所述的系统,其特征在于,进一步包括为所述计算装置提供的集成开发环境,其中所述集成开发环境为用户配置所述计算装置以开发所述编程代码。
16.如权利要求15所述的系统,其特征在于,所述集成开发环境包括标签格式区,所述标签格式区为用户配置所述计算装置以开发标签格式。
17.如权利要求16所述的系统,其特征在于,进一步包括用于标签的信息的至少一个数据源,其中所述集成开发环境进一步为用户配置所述计算装置以在打印装置或者计算装置生成标签时提供标签中的信息。
18.如权利要求16所述的系统,其特征在于,进一步包括所述集成开发环境的编程代码编辑器,其中设置有所述编程代码编辑器的所述集成开发环境进一步为用户配置所述计算装置以开发所述编程代码。
19.如权利要求11所述的系统,其特征在于,所述编程代码是以脚本语言编写的。
20.如权利要求11所述的方法,其特征在于,在使得所述计算装置仿真所述打印机时,显示对所述打印机的呈现。
21.一种用于提供定制化打印机软件的方法,所述方法包括 从第一人操作的第一计算装置处接收对于在配置有固件的打印机上运行的定制化打印机软件的电子请求,其中所述请求包括与所述定制化打印机软件相关的至少一个规格; 在由第二人操作的第二计算装置上开发所述定制化打印机软件,其中所述第二计算装置配置有所述固件; 在所述第二计算装置上运行所述定制化打印机软件,以校验所述定制化打印机软件满足所述电子请求; 当在所述第二计算装置上运行所述定制化打印机软件时,在所述第二计算装置上仿真所述打印机,其中当所述定制化打印机软件与所述第二计算装置上的固件对接时进行所述仿真; 如果所述定制化打印机软件未通过校验,则修改所述定制化打印机软件并且在所述第二计算装置上运行修改后的所述定制化打印机软件;并且 当所述定制化打印机软件通过校验时,将所述定制化打印机软件发送到所述第一计算装置,其中所述第二计算装置和所述打印机未连接。
全文摘要
提供用于在未与打印机连接的计算装置上精确仿真打印机的系统和方法。所述计算装置设置有固件和与所述固件接口用于定制打印操作的编程代码。为所述打印机和所述计算装置提供固件。为所述计算装置提供编程代码,所述计算装置运行所述编程代码。所述编程代码与为所述计算装置提供的固件接口,并当打印机运行编程代码时使得所述计算装置仿真所述打印机。所述计算装置和所述打印机未连接。
文档编号G06F3/12GK102884503SQ20108006354
公开日2013年1月16日 申请日期2010年2月10日 优先权日2010年2月10日
发明者S·格里贝尔, P·约恩逊 申请人:佐藤控股株式会社, 株式会社佐藤知识财产研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1