午夜毛片免费看,老师老少妇黄色网站,久久本道综合久久伊人,伊人黄片子

用于在打印裝置中引入運(yùn)行編程代碼的系統(tǒng)和方法

文檔序號(hào):6596475閱讀:392來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):用于在打印裝置中引入運(yùn)行編程代碼的系統(tǒng)和方法
技術(shù)領(lǐng)域
一般而言,本發(fā)明涉及打印機(jī),具體地是指使用編程代碼來(lái)增強(qiáng)打印機(jī)功能。
背景技術(shù)
大多數(shù)標(biāo)記和標(biāo)簽打印機(jī)采用傳統(tǒng)的預(yù)定義的專(zhuān)用控制語(yǔ)言運(yùn)行。例如,SATO條形碼打印機(jī)語(yǔ)言(“SBPL”),ZEBRA編程語(yǔ)言(“ZPL”),DATAMAX打印機(jī)語(yǔ)言(“DPL”), INTERMEC打印機(jī)語(yǔ)言(“IPL”)等所有包括專(zhuān)有功能的語(yǔ)言,這些專(zhuān)有功能要求相當(dāng)顯著的最低技術(shù)水平,以便用戶(hù)能夠在打印機(jī)的輸出功能中實(shí)行改變。各種打印機(jī)模塊(例如, 支持上述所列舉的打印機(jī)語(yǔ)言的打印機(jī)廠(chǎng)商所提供的模塊)能執(zhí)行由預(yù)定義的各個(gè)命令所限定的打印任務(wù)。對(duì)打印機(jī)功能的特定改變通常通過(guò)改變打印機(jī)的固件實(shí)現(xiàn)。由于每個(gè)打印機(jī)各自的控制語(yǔ)言是預(yù)定義的,所以現(xiàn)有打印機(jī)只能執(zhí)行預(yù)定義的任務(wù)。在需要增加多種打印機(jī)功能的情況下,需要改變打印機(jī)的固件。這經(jīng)常涉及制作復(fù)雜的源代碼修改以及嵌入式程序開(kāi)發(fā)工具以進(jìn)行修改。這種方式并不靈活,而且不能由打印機(jī)的終端用戶(hù)用戶(hù)在本地完成用戶(hù)用戶(hù)化。此外,盡管在設(shè)計(jì)時(shí)可以將打印機(jī)功能置于程序中,但是不同類(lèi)型的數(shù)據(jù)文件或設(shè)置能夠激活現(xiàn)有的程序化功能,但是不能添加新功能。而且,僅能夠?yàn)橛邢迶?shù)量的情況設(shè)計(jì)程序化的應(yīng)用。當(dāng)添加新功能時(shí),必須替換整個(gè)程序且重啟打印機(jī)。這不僅耗時(shí)并且相應(yīng)的成本高。

發(fā)明內(nèi)容
在現(xiàn)有技術(shù)中,沒(méi)有在不改變打印機(jī)固件源代碼且不使用昂貴的開(kāi)發(fā)工具的情況下定制或修改標(biāo)記/標(biāo)簽打印機(jī)軟件的能力。因此,提供了一種用于修改打印機(jī)功能的方法和系統(tǒng)。打印機(jī)具有固件以及與該固件連接用于控制打印操作的編程代碼。所述編程代碼包括至少一個(gè)占位符。提供第二編程代碼,當(dāng)在處理器可讀介質(zhì)上執(zhí)行該代碼時(shí),其與第一編程代碼連接以提供新的或者不同的打印機(jī)功能。執(zhí)行所述第二編程代碼實(shí)現(xiàn)所述至少一個(gè)占位符的功能。參見(jiàn)附圖對(duì)本發(fā)明的下述描述,本發(fā)明的其它特征和優(yōu)點(diǎn)將變得顯而易見(jiàn)。


為了闡述本發(fā)明,在附圖中示出了當(dāng)前優(yōu)選的方式,但是可以理解本發(fā)明并不限于所示出的精確的布置和機(jī)構(gòu)。參見(jiàn)附圖對(duì)本發(fā)明的下述描述,本發(fā)明的特征和優(yōu)點(diǎn)將變得顯而易見(jiàn),其中圖1示出根據(jù)優(yōu)選實(shí)施例的示例性硬件布置;圖2示出圖1所示的示例性信息處理器的功能元件;圖3是示出根據(jù)優(yōu)選實(shí)施例的打印機(jī)API的方框示意圖;圖4示出根據(jù)優(yōu)選實(shí)施例提供的由標(biāo)記和標(biāo)簽打印機(jī)打印的且使用API限定的示
4例性標(biāo)記;圖5示出分別指示水平和垂直位置的數(shù)據(jù)區(qū)尺寸,并且該尺寸用于定義待提供到標(biāo)記上的數(shù)據(jù)區(qū);圖6示出根據(jù)優(yōu)選實(shí)施例提供的由標(biāo)記和標(biāo)簽打印機(jī)打印的且使用API限定并表示顏色選項(xiàng)的另一示例性標(biāo)記;以及圖7A-圖10示出包括多個(gè)電子存儲(chǔ)格式的優(yōu)選實(shí)施例的實(shí)施方式。
具體實(shí)施例方式根據(jù)本文的教導(dǎo),提供一個(gè)或更多接口使個(gè)人能夠定制標(biāo)記和標(biāo)簽打印機(jī)設(shè)置, 而無(wú)需升級(jí)、改變或修改與標(biāo)記和標(biāo)簽打印機(jī)具有固件源代碼,也無(wú)需昂貴的開(kāi)發(fā)工具。因此,為應(yīng)用開(kāi)發(fā)有效地激活標(biāo)記和標(biāo)簽打印機(jī),而無(wú)需利用其他工具采用打印機(jī)專(zhuān)有解釋語(yǔ)言來(lái)寫(xiě)應(yīng)用,即開(kāi)發(fā)打印機(jī)固件。在優(yōu)選的實(shí)施例中,與標(biāo)記和標(biāo)簽打印機(jī)結(jié)合的是解釋腳本語(yǔ)言。提供一組格式化為打印機(jī)應(yīng)用程序接口(API)的打印機(jī)擴(kuò)展,以激活為定制和擴(kuò)展功能與打印機(jī)固件的交互作用和對(duì)打印機(jī)固件的操作。優(yōu)選地為標(biāo)記和標(biāo)簽打印機(jī)提供API。在優(yōu)選的實(shí)施例中,解釋腳本語(yǔ)言為L(zhǎng)UA。通過(guò)使得打印機(jī)固件與例如用腳本語(yǔ)言開(kāi)發(fā)的一組打印機(jī)API接口,標(biāo)記和標(biāo)簽打印機(jī)的用戶(hù)經(jīng)由標(biāo)記和標(biāo)簽打印機(jī)所使用的用于執(zhí)行各種任務(wù)的軟件命令獲得了改善的靈活性和可存取性。結(jié)合打印機(jī)的固件使用API,用戶(hù)能夠開(kāi)發(fā)定制的打印功能,并不再被要求改變標(biāo)記和標(biāo)簽打印機(jī)的固件源代碼或獲取通常用于改變或修改標(biāo)記和標(biāo)簽打印機(jī)的固件源代碼的開(kāi)發(fā)工具。如下所更詳細(xì)描述的,結(jié)合此處的教導(dǎo)所提供的API支持各種功能,例如,接口不同的鍵盤(pán)、顯示器,提供打印機(jī)繪制的各種字體和格式,存取打印機(jī)文件系統(tǒng),打印機(jī)配置和與標(biāo)記和標(biāo)簽打印機(jī)相關(guān)的各種其它功能。因此,本發(fā)明提供多種打印方案,而無(wú)需改變固件源代碼或昂貴的嵌入式系統(tǒng) (例如,用于修改預(yù)定義的專(zhuān)用控制和打印機(jī)固件的軟件開(kāi)發(fā)工具)此外,此處所提供的特征使得用戶(hù)能夠開(kāi)發(fā)用于包括定制功能的打印機(jī)功能的編程代碼,并能配置為打印機(jī)提供經(jīng)由API的功能的代碼。下文中,根據(jù)本文的教導(dǎo),用戶(hù)開(kāi)發(fā)集成到先前配置的編程代碼中的附加編程代碼,而無(wú)需重配置先前配置的編程代碼。這樣,可開(kāi)發(fā)用于增強(qiáng)打印機(jī)功能的代碼,并隨后例如被配置到標(biāo)記和標(biāo)簽打印機(jī)中。之后, 用戶(hù)開(kāi)發(fā)附加附加代碼,包括在運(yùn)行時(shí)執(zhí)行的用于一個(gè)或其它打印機(jī)功能的編程代碼,或者修改先前配置的代碼的功能。根據(jù)本文的教導(dǎo),用戶(hù)只需要將附加代碼配置到打印機(jī)附力口,同時(shí)先前配置的代碼還保留在打印機(jī)中。通過(guò)使得用戶(hù)只開(kāi)發(fā)和配置提供新的或修改后的功能的代碼,節(jié)省了大量時(shí)間。因此,用戶(hù)僅需要?jiǎng)?chuàng)建必要的包括附加功能的程序,然后將代碼提供給打印機(jī)。在優(yōu)選實(shí)施例中,將代碼下載到閃存(或其它公知存儲(chǔ)器)中,隨后由打印機(jī)接收。如稍后將詳細(xì)描述的,先前配置的程序優(yōu)選地集成新配置的編程代碼,并作為單獨(dú)的、統(tǒng)一的程序運(yùn)行。將運(yùn)行時(shí)間編程代碼引入到打印機(jī)(例如,標(biāo)記和標(biāo)簽打印機(jī))的能力,解決了現(xiàn)有技術(shù)中的缺點(diǎn),包括激活配置改進(jìn)和新打印機(jī)功能到打印機(jī)中而無(wú)需對(duì)打印機(jī)中先前配置的代碼進(jìn)行重配置。這樣,能更簡(jiǎn)單且更快速地修改或者更新與打印機(jī)固件接口的先前開(kāi)發(fā)的定制程序。用戶(hù)僅需要開(kāi)發(fā)用于附加功能的特定編程代碼并且將其配置到打印機(jī)中,例如通過(guò)將代碼下載到稍后與打印機(jī)的固件接口的閃存中。在優(yōu)選實(shí)施例中,為定制功能開(kāi)發(fā)的先前配置的編程代碼包括如現(xiàn)有技術(shù)中公知的用于后開(kāi)發(fā)的編程代碼的占位符,該編程代碼用于將后配置的編程代碼集成到先前配置的代碼中。優(yōu)選地,先前配置的編程代碼在運(yùn)行時(shí)加載新配置的編程代碼并實(shí)施新功能,無(wú)需重配置或重啟打印機(jī)設(shè)備。這樣,在運(yùn)行時(shí)執(zhí)行新增加的編程指令。在一個(gè)實(shí)施例中,以相同的編程語(yǔ)言進(jìn)行開(kāi)發(fā)或編寫(xiě)新開(kāi)發(fā)的編程代碼與先前開(kāi)發(fā)的編程代碼。在可選實(shí)施例中,以與先前開(kāi)發(fā)的代碼不同的編程語(yǔ)言開(kāi)發(fā)新配置的編程代碼。在其他情況下,新配置的編程代碼提供的功能變成包括先前開(kāi)發(fā)的代碼的打印機(jī)運(yùn)行軟件中集成的一部分,并因此可存取。在優(yōu)選實(shí)施例中,用于具有先前配置的定制代碼的打印機(jī)待開(kāi)發(fā)的定制編程代碼采用腳本程序開(kāi)發(fā),并通過(guò)解釋器標(biāo)記,然后在SDRAM存儲(chǔ)器啟動(dòng)前加載到SDRAM存儲(chǔ)器。 當(dāng)運(yùn)行先前配置的定制編程代碼時(shí),優(yōu)選執(zhí)行指令來(lái)完成運(yùn)行清單看是否存在任何新開(kāi)發(fā)或引入的程序能被增加到標(biāo)記程序中。標(biāo)記運(yùn)行時(shí)間(在SDRAM)隨后包含原始程序和新引入的程序。由于原始程序或先前配置的程序并不知道任何增加的特定程序,所以先前配置的程序包括為增加程序存取所提供的占位符。因此,通過(guò)打印機(jī)的固件API加載的定制編程應(yīng)用優(yōu)選包括用于新配置或引入待集成的程序的占位符。新配置的程序優(yōu)選地作為原始程序完全集成的一部分運(yùn)行。在優(yōu)選實(shí)施例中,可以在任一通用平臺(tái)中開(kāi)發(fā)定制編程代碼,所述平臺(tái)包括電子數(shù)據(jù)表、數(shù)據(jù)庫(kù)、文本編輯器、文字處理器、集成開(kāi)發(fā)環(huán)境等,并且用戶(hù)能夠如愿增加新的定制打印機(jī)功能。通過(guò)使得終端用戶(hù)能夠開(kāi)發(fā)與先前配置的應(yīng)用集成的定制應(yīng)用,由于打印機(jī)固件所提供的全部編程以及提供定制功能的任何先前部署的應(yīng)用都與新開(kāi)發(fā)的編程代碼集成,本文的教導(dǎo)提供了一種增強(qiáng)打印機(jī)功能的有力的方式。根據(jù)實(shí)施例,經(jīng)由定制編程代碼的新的或者修改的打印機(jī)功能并不受打印機(jī)固件的影響。反而包括腳本所提供的編程指令在內(nèi)的編程指令由于占位符的功能而被“引入”到現(xiàn)有的定制編程代碼中。這種高級(jí)別的代碼引入技術(shù)使得終端用戶(hù)能夠容易且快速地修改和改善打印機(jī)功能,而無(wú)需改變打印機(jī)的固件或重配置以修改的或改善的打印機(jī)功能更新的定制程序應(yīng)用。現(xiàn)在參照附圖,其中相同的附圖標(biāo)記表示相同的元件。圖1示出了根據(jù)本發(fā)明的實(shí)施例的示例性硬件配置,用于經(jīng)由直接的電纜連接或者通過(guò)通信網(wǎng)絡(luò)來(lái)提供和安裝打印機(jī)應(yīng)用程序,并且這里一般是指系統(tǒng)100。在圖1所示的示例中,信息處理器102設(shè)置有集成開(kāi)發(fā)程序環(huán)境(“IDE”),例如以L(fǎng)UA編程語(yǔ)言開(kāi)發(fā)應(yīng)用,如本領(lǐng)域中技術(shù)人員所公知的。 信息處理器102優(yōu)選包括對(duì)于支持本發(fā)明所必需的所有數(shù)據(jù)庫(kù)。但是,通常認(rèn)為信息處理器102能夠通過(guò)可以聯(lián)接信息處理器102的通信網(wǎng)絡(luò)106或任何其它通信網(wǎng)絡(luò)訪(fǎng)問(wèn)任意所需的數(shù)據(jù)庫(kù)。通信網(wǎng)絡(luò)106優(yōu)選為諸如因特網(wǎng)的全球公共通信網(wǎng)絡(luò),但也可以是廣域網(wǎng) (WAN)、局域網(wǎng)(LAN)、企業(yè)內(nèi)部網(wǎng)或其它使得計(jì)算設(shè)備和周邊設(shè)備通信的網(wǎng)絡(luò)。在優(yōu)選實(shí)施例中,信息處理器102是能夠通過(guò)通信網(wǎng)絡(luò)106發(fā)送和接收數(shù)據(jù)的任意計(jì)算機(jī)可讀介質(zhì)設(shè)備,例如,大型計(jì)算機(jī)、微型計(jì)算機(jī)、個(gè)人計(jì)算機(jī)、膝上計(jì)算機(jī)、個(gè)人數(shù)
6字助理(PDA)、蜂窩電話(huà)和諸如網(wǎng)絡(luò)電視的互聯(lián)網(wǎng)接入設(shè)備。另外,信息處理器102優(yōu)選裝備有網(wǎng)絡(luò)瀏覽器軟件,例如MICROSOFT INTERNET EXPLORER, MOZILLA FIREFOX等。信息處理器102利用任何公知的數(shù)據(jù)通信網(wǎng)絡(luò)技術(shù)聯(lián)接到通信網(wǎng)絡(luò)106。仍如圖1所示,打印機(jī)108優(yōu)選為標(biāo)記和標(biāo)簽打印機(jī),并能運(yùn)行以打印從信息處理器102處接收到的數(shù)據(jù)的標(biāo)記和標(biāo)簽。標(biāo)記和標(biāo)簽打印機(jī)108可以設(shè)置有鍵盤(pán)110和顯示器112,以在不存在信息處理器102或與信息處理器102結(jié)合的情況下激活標(biāo)記和標(biāo)簽打印機(jī)108的輸入和輸出功能。圖2示出了示例性信息處理器102的功能元件,并且包括一個(gè)或多個(gè)中央處理單元(CPU) 202,用于執(zhí)行軟件代碼并控制信息處理器102的運(yùn)行。其它元件包括只讀存儲(chǔ)器 (ROM) 204,隨機(jī)存取存儲(chǔ)器(RAM) 206,通過(guò)通信網(wǎng)絡(luò)從其它計(jì)算設(shè)備接收數(shù)據(jù)或傳輸數(shù)據(jù)到其它計(jì)算設(shè)備的一個(gè)或多個(gè)網(wǎng)絡(luò)接口 208,諸如用于存儲(chǔ)程序代碼數(shù)據(jù)庫(kù)和應(yīng)用數(shù)據(jù)的硬盤(pán)驅(qū)動(dòng)器、軟盤(pán)驅(qū)動(dòng)器、磁帶驅(qū)動(dòng)器、⑶ROM或DVD等的存儲(chǔ)設(shè)備210,諸如鍵盤(pán)、鼠標(biāo)、控制球、麥克風(fēng)等一個(gè)或多個(gè)輸入設(shè)備212,以及顯示器214。此外,標(biāo)記和標(biāo)簽打印機(jī)108還可以適當(dāng)?shù)嘏渲没蛟O(shè)置有一個(gè)或多個(gè)功能元件202-214。信息處理器102的各種部件不需要物理上包含于相同的底架中或者甚至不需要位于單一的位置處。例如,存儲(chǔ)設(shè)備210可以位于遠(yuǎn)離信息處理器102的剩余元件的位置處,并且甚至可以通過(guò)通信網(wǎng)絡(luò)106經(jīng)由網(wǎng)絡(luò)接口 208連接到CPU 202上。信息處理器102 優(yōu)選地包括裝備有足夠容量的存儲(chǔ)器,以提供必要的數(shù)據(jù)庫(kù)、論壇以及其它通信服務(wù),并用作用于通信超文本標(biāo)記語(yǔ)言(HTML)、Java applets、Active-Χ控制程序的網(wǎng)絡(luò)服務(wù)器。信息處理器102布置有如圖2所示的部件,適于信息處理器102的期望運(yùn)行環(huán)境??蛇x擇CPU 202、網(wǎng)絡(luò)接口 208和存儲(chǔ)器及存儲(chǔ)設(shè)備來(lái)確保容納期望需求的容量。本發(fā)明的特質(zhì)在于,編寫(xiě)計(jì)算機(jī)可執(zhí)行代碼(即,軟件)領(lǐng)域的技術(shù)人員能夠利用流行的計(jì)算機(jī)編程語(yǔ)言中的一個(gè)或多個(gè)的結(jié)合以及開(kāi)發(fā)環(huán)境(包括但不限于LUA,C,C++, Visual Basic, JAVA, HTML, XML, ACTIVE SERVER PAGES, JAVA server pages, servlets, MYSQL and PHP),實(shí)現(xiàn)這里所描述的功能。雖然通過(guò)這里的示例方式以及利用網(wǎng)絡(luò)瀏覽器和網(wǎng)絡(luò)位置服務(wù)器(例如,信息處理器102)的基于網(wǎng)絡(luò)的系統(tǒng)描述了本發(fā)明,但是系統(tǒng)100并不局限于這種配置??梢钥紤]布置系統(tǒng)100以使得標(biāo)記和標(biāo)簽打印機(jī)108利用任何已知的通信方法與信息處理器102通信并輸出從信息處理器102接收到的數(shù)據(jù),所述通信方法例如為利用與局域網(wǎng)協(xié)議結(jié)合的非互聯(lián)網(wǎng)瀏覽器WINDOWS查看器,所述協(xié)議例如為互聯(lián)網(wǎng)包交換協(xié)議(IPX)、撥號(hào)、第三方、專(zhuān)用網(wǎng)或者增值網(wǎng)(VAN)。此外還可以考慮到可以在信息處理器102上使用任何合適的操作系統(tǒng),例如, DOS、WINDOWS 3. χ、WINDOWS 95、WINDOWS 98、WINDOWS NT、WINDOWS 2000、WINDOWS ME、 WINDOWS CE, WINDOWS POCKET PC, WINDOWS XP, MAC OS、UNIX、LINUX、PALM OS、POCKET PC 和任何其它合適的操作系統(tǒng)。在優(yōu)選實(shí)施例中,以L(fǎng)UA編程語(yǔ)言開(kāi)發(fā)標(biāo)記和標(biāo)簽打印機(jī)108應(yīng)用。根據(jù)優(yōu)選實(shí)施例,包括運(yùn)行來(lái)處理應(yīng)用中提供的LUA編程語(yǔ)句的LUA解釋器。不像典型的高級(jí)編程語(yǔ)言, LUA是一種腳本語(yǔ)言并且不是基本編程語(yǔ)言。不像典型的標(biāo)記和標(biāo)簽打印機(jī)那樣接收SBPL 命令或者其它預(yù)定義的命令來(lái)使得標(biāo)記和標(biāo)簽打印機(jī)執(zhí)行各種功能,本發(fā)明實(shí)現(xiàn)為L(zhǎng)UA語(yǔ)
7言延伸的打印機(jī)API,其與打印機(jī)固件接口并且由LUA解釋器解釋。這能例如利用函數(shù)調(diào)用來(lái)開(kāi)發(fā)更先進(jìn)和復(fù)雜的應(yīng)用。此外,通過(guò)實(shí)施為L(zhǎng)UA編程語(yǔ)言延伸的API,能夠修改一部分標(biāo)記和標(biāo)簽打印機(jī)108功能,這與現(xiàn)有技術(shù)中標(biāo)記和標(biāo)簽打印機(jī)要求完全重寫(xiě)其固件應(yīng)用以實(shí)現(xiàn)單一的改變的情況相反。本發(fā)明另一個(gè)優(yōu)點(diǎn)是以L(fǎng)UA編程語(yǔ)言開(kāi)發(fā)并在標(biāo)記和標(biāo)簽打印機(jī)108 API中實(shí)施的應(yīng)用更緊湊并且執(zhí)行起來(lái)顯著變快。這是因?yàn)楝F(xiàn)有技術(shù)的標(biāo)記和標(biāo)簽打印機(jī)要求更多的軟件指令來(lái)實(shí)現(xiàn)各種功能,這些功能可以由本發(fā)明的API所實(shí)現(xiàn)。此外,例如通過(guò)利用函數(shù)調(diào)用、變量聲明等的優(yōu)點(diǎn),LUA解釋器與本發(fā)明的API有效地接口,并且代碼的使用由于需要更少的存儲(chǔ)器的函數(shù)而相對(duì)于現(xiàn)有技術(shù)的標(biāo)記和標(biāo)簽打印機(jī)顯著改善。本發(fā)明的LUA打印機(jī)API相對(duì)于現(xiàn)有技術(shù)的標(biāo)記和標(biāo)簽打印機(jī)的另一優(yōu)點(diǎn)是能夠存取打印函數(shù),而無(wú)需解釋器經(jīng)由現(xiàn)有的控制語(yǔ)言(例如SBPL或ZPL)來(lái)存取打印函數(shù)。換句話(huà)說(shuō),API直接與控制打印機(jī)108打印功能的標(biāo)記和標(biāo)簽打印機(jī)108固件接口。與現(xiàn)有技術(shù)相比這是一個(gè)改進(jìn),在現(xiàn)有技術(shù)中需要生成例如SBPL命令來(lái)與現(xiàn)有的控制語(yǔ)言接口, 由此增加了與修改打印機(jī)功能有關(guān)的步驟和費(fèi)用。此外,由于本發(fā)明的API經(jīng)由LUA解釋器接口,所以與應(yīng)用相關(guān)的尺寸限制實(shí)際上被消除,除了基于特定標(biāo)記和標(biāo)簽打印機(jī)108的內(nèi)部存儲(chǔ)器。這對(duì)于現(xiàn)有技術(shù)的標(biāo)記和標(biāo)簽打印機(jī)是一個(gè)改進(jìn),例如,現(xiàn)有技術(shù)的標(biāo)記和標(biāo)簽打印機(jī)具有對(duì)代碼行數(shù)的限制,所述代碼可以安裝并且不支持動(dòng)態(tài)存儲(chǔ)器分配。本發(fā)明的API支持例如函數(shù)調(diào)用和其它高級(jí)編程語(yǔ)言功能,例如釋放增加用于特定功能而實(shí)施的編程代碼量的存儲(chǔ)器(“碎片收集”)。本發(fā)明另一優(yōu)點(diǎn)是開(kāi)發(fā)工具作為L(zhǎng)UA的插入部件是可用的,所述開(kāi)發(fā)工具例如為 MICROSOFT VISUAL STUDIO或其它集成開(kāi)發(fā)環(huán)境(“I腿s”)。用于各個(gè)標(biāo)記和標(biāo)簽打印機(jī) 108的應(yīng)用開(kāi)發(fā)對(duì)于開(kāi)發(fā)者而言是更有吸引力的,所述開(kāi)發(fā)者對(duì)在可視化集成開(kāi)發(fā)環(huán)境中開(kāi)發(fā)軟件應(yīng)用是熟悉且適應(yīng)的。本發(fā)明的另一優(yōu)點(diǎn)在于LUA應(yīng)用可以在具有模擬打印機(jī)操作的LUA虛擬機(jī)的計(jì)算機(jī)上運(yùn)行。用戶(hù)能夠在下載和在打印機(jī)上安裝應(yīng)用之前,在計(jì)算機(jī)上測(cè)試開(kāi)發(fā)的LUA應(yīng)用, 這預(yù)先排除實(shí)際操作打印機(jī)來(lái)測(cè)試LUA應(yīng)用。在優(yōu)選實(shí)施例中,多個(gè)獨(dú)立的LUA虛擬機(jī)可以按一系列操作并在單一標(biāo)記和標(biāo)簽打印機(jī)108上或其網(wǎng)絡(luò)上實(shí)施。這樣,可以為例如條形碼打印機(jī)實(shí)施可配置的動(dòng)態(tài)局域設(shè)定,所述條形碼打印機(jī)根據(jù)各種定制設(shè)定(例如,區(qū)域設(shè)定和語(yǔ)言設(shè)定)對(duì)數(shù)據(jù)進(jìn)行分類(lèi)。 各種局域設(shè)定可以根據(jù)特定計(jì)算機(jī)系統(tǒng)的操作系統(tǒng)分類(lèi),并且行為的變化可能例如取決于局域設(shè)定。通過(guò)經(jīng)由LUA解釋器實(shí)施API,可以提供超過(guò)現(xiàn)有技術(shù)中的先前存在的功能的附加打印機(jī)功能?,F(xiàn)在提供關(guān)于根據(jù)優(yōu)選實(shí)施例的附加打印機(jī)功能及其改善實(shí)施的討論。優(yōu)選地,在示例性實(shí)施例中,LUA實(shí)施支持編程函數(shù)調(diào)用和通過(guò)變量進(jìn)行聲明、尋址和傳遞值到編程函數(shù)或從編程函數(shù)傳遞值。優(yōu)選地,編程函數(shù)返回表示函數(shù)執(zhí)行成功與否的值,例如錯(cuò)誤代碼。例如,如果函數(shù)并未像期望的那樣執(zhí)行,則將返回表示錯(cuò)誤原因、錯(cuò)誤符號(hào)、錯(cuò)誤結(jié)果或其它適當(dāng)信息的錯(cuò)誤代碼。而且,例如相關(guān)表格名稱(chēng)、字符串值、數(shù)據(jù)、 數(shù)值等函數(shù)名稱(chēng)和變量名稱(chēng)優(yōu)選地并不輕易地顯示給用戶(hù),而是至少部分的隱藏不見(jiàn)或完全隱藏不見(jiàn)。
優(yōu)選地,本文的教導(dǎo)支持安全實(shí)施,例如包括要求用戶(hù)具有所提供的充足的授權(quán)以獲得執(zhí)行各種任務(wù)的權(quán)利,所述任務(wù)例如為獲得特定數(shù)據(jù)、一個(gè)或多個(gè)數(shù)據(jù)目錄,或者創(chuàng)建、移除或其它修改數(shù)據(jù)目錄、數(shù)據(jù)文件等。API支持的另一個(gè)特征是界面渲染。如此處使用的,渲染通常指的是創(chuàng)建相互作用的編程目標(biāo)。例如,繪制目標(biāo)可以形成為數(shù)據(jù)區(qū)(例如,基于文本的區(qū))、條形碼、圖形區(qū)。 渲染目標(biāo)包括一個(gè)或多個(gè)能被例如方法所操縱的屬性。優(yōu)選地,經(jīng)由API渲染的目標(biāo)(例如,文本區(qū)、條形碼和圖形目標(biāo))設(shè)置(例如,增加或者嵌入)有標(biāo)記目標(biāo)并經(jīng)由標(biāo)記和標(biāo)簽打印機(jī)108打印。此外,API支持提供位于標(biāo)記上的目標(biāo),例如條形碼,其至少部分地在標(biāo)記和標(biāo)簽打印機(jī)108的可打印區(qū)域的外側(cè),而不會(huì)在生成標(biāo)記、打印標(biāo)記時(shí)或者在同時(shí)執(zhí)行這兩個(gè)動(dòng)作時(shí)引起錯(cuò)誤。這個(gè)特征使得可以生成具有這樣的條形碼的標(biāo)記例如只有一半條形碼被標(biāo)記和標(biāo)簽打印機(jī)108打印出。相對(duì)于現(xiàn)有技術(shù)中如果用戶(hù)想要由標(biāo)記和標(biāo)簽打印機(jī) 108在標(biāo)記上打印局部或者不完全的目標(biāo)(例如,條形碼)則需要修改打印機(jī)功能的方式, 該特征提供了改進(jìn)。在一個(gè)實(shí)施例中操作過(guò)程期間,例如文本區(qū)、條形碼、圖形盒、圖像等的渲染目標(biāo)相應(yīng)的位置由水平位置參數(shù)和垂直位置參數(shù)(例如,“hPos”和“vPos”)限定。所述參數(shù)值優(yōu)選地定義了目標(biāo)的定位點(diǎn)位置。如果hPos和vPos被正確地設(shè)定,則定義錯(cuò)誤參數(shù)(例如,“E_SUCCESS”)??蛇x地,如果hPos或vPos沒(méi)有被正確地設(shè)定,則定義不同的錯(cuò)誤參數(shù) (例如,“EPARAM”)。除了為定位所定義的參數(shù),本發(fā)明還支持目標(biāo)(例如,條形碼或圖像)的放大率。 例如,為待設(shè)定的水平和垂直像素放大率(例如,值1-1 限定水平和垂直放大率參數(shù)(例如,“hMag”和“vMag”),這表示目標(biāo)的水平和垂直放大率的相應(yīng)度數(shù)。圖3是示出根據(jù)優(yōu)選實(shí)施例提供的與標(biāo)記和標(biāo)簽打印機(jī)108固件接口的相關(guān)API 302的方框圖。如圖3所示,鍵盤(pán)API 304可運(yùn)行以接收和解釋(即,讀取)來(lái)自與標(biāo)記和標(biāo)簽打印機(jī)108 —體的鍵盤(pán)110的信號(hào)??蛇x地,鍵盤(pán)API 304運(yùn)行以讀取和解釋不直接與標(biāo)記和標(biāo)簽打印機(jī)108聯(lián)接的外部鍵盤(pán)或其它輸入設(shè)備的信號(hào)。顯示器API 306運(yùn)行以向與打印機(jī)108—體的顯示器112寫(xiě)入寬范圍的文字和圖形內(nèi)容。可選地,顯示器API 306 運(yùn)行以向附著在標(biāo)記和標(biāo)簽打印機(jī)108上的外部顯示器214寫(xiě)入文本和圖形內(nèi)容。優(yōu)選地, 顯示器API 306支持用于許多不同書(shū)面語(yǔ)言的寬范圍可選的字體和編碼類(lèi)型。繼續(xù)參考圖3,打印繪制API 308支持待輸出到由標(biāo)記和標(biāo)簽打印機(jī)108打印出的標(biāo)記上的用戶(hù)定義的數(shù)據(jù)區(qū)元素。這種數(shù)據(jù)區(qū)元素的示例包括文本數(shù)據(jù)區(qū)、I-D和2-D條形碼、線(xiàn)和盒、三角函數(shù)、圖像、單個(gè)像素、圖形、格式數(shù)據(jù)以及反向值。打印機(jī)繪制API 308 使得用戶(hù)可以定義數(shù)據(jù)區(qū)的類(lèi)型,以及待輸出到特定標(biāo)記/標(biāo)簽上的數(shù)據(jù)區(qū)的位置。優(yōu)選地,打印機(jī)繪制API 308提供支持各種語(yǔ)言的字體和編碼類(lèi)型的可選項(xiàng)。經(jīng)由打印機(jī)繪制 API 308在區(qū)定義或來(lái)自文件或通信接口中優(yōu)選支持和包括數(shù)據(jù)格式的固定長(zhǎng)度或可變長(zhǎng)度。其它特征包括支持用于定義一個(gè)或多個(gè)上述區(qū)目標(biāo)的顏色的可選顏色輸出項(xiàng)。此外, 一個(gè)或多個(gè)打印輸出或供給命令都被作為輸出到空白或打印出的標(biāo)記和標(biāo)簽的打印繪制 API308的函數(shù)發(fā)布。優(yōu)選地,通過(guò)打印機(jī)繪制API 308進(jìn)一步提供用戶(hù)可選打印質(zhì)量控制特征。
9
此外,優(yōu)選地設(shè)置文件系統(tǒng)API 310以使得用戶(hù)存儲(chǔ)、刪除、讀取和寫(xiě)入位于一個(gè)或者多個(gè)標(biāo)記和標(biāo)簽打印機(jī)108的中的只讀存儲(chǔ)器文件系統(tǒng)、隨機(jī)存取存儲(chǔ)器文件系統(tǒng)、 閃存文件系統(tǒng)或者外部存儲(chǔ)源(例如,緊湊閃存存儲(chǔ)卡、安全數(shù)字存儲(chǔ)卡、USB存儲(chǔ)設(shè)備等) 的文件中。使得用戶(hù)可以存取存儲(chǔ)在與標(biāo)記和標(biāo)簽打印機(jī)108相關(guān)的各種內(nèi)部和外部源中的數(shù)據(jù)、文件等,這顯著增加了用戶(hù)控制和操作標(biāo)記和標(biāo)簽打印機(jī)108運(yùn)行的靈活性。優(yōu)選的,結(jié)合包括格式標(biāo)記和標(biāo)簽打印機(jī)108文件系統(tǒng)的文件系統(tǒng)API 310提供各種功能的示例,來(lái)確定交互目錄的入口、導(dǎo)航到特定目錄、創(chuàng)建新的目錄、拷貝文件、移除目錄或文件、 確定在文件系統(tǒng)中已使用和可獲得的字節(jié),并改變文件或目錄的訪(fǎng)問(wèn)權(quán)。繼續(xù)參照?qǐng)D3,射頻識(shí)別(“RFID”)API 312支持讀取和寫(xiě)入標(biāo)記和標(biāo)簽打印機(jī) 108提供的RFID芯片/嵌體。另外,實(shí)時(shí)時(shí)鐘API 314使得用戶(hù)定義日期和時(shí)間數(shù)據(jù)到標(biāo)記和標(biāo)簽打印機(jī)108并從標(biāo)記和標(biāo)簽打印機(jī)108讀取該數(shù)據(jù)。配置API 316支持用戶(hù)定義特定打印機(jī)具體參數(shù)。例如,配置API 316使得用戶(hù)定義與打印速度、質(zhì)量、日期和時(shí)間函數(shù)、本地語(yǔ)言、菜單控制等相關(guān)的通信參數(shù)。配置API 316對(duì)于以下方面是非常有用的 使得用戶(hù)定義或修改用于標(biāo)記和標(biāo)簽打印機(jī)108的操作控制,所述操作控制典型地獨(dú)占標(biāo)記和標(biāo)簽打印機(jī)108的固件并且僅通過(guò)具有專(zhuān)有軟件技能的技術(shù)專(zhuān)業(yè)人員修改。另外,通信API 318優(yōu)選地控制與外部I/O接口設(shè)備的通信。支持多個(gè)通信協(xié)議和標(biāo)準(zhǔn),例如包括 RS232、RS485、RS422、USB、LAN、WLAN 和外部數(shù)字延遲接口。圖3所示的其它API 302包括可運(yùn)行以控制打印機(jī)中設(shè)備的設(shè)備API 320、可運(yùn)行以在任意給定時(shí)間報(bào)告打印機(jī)狀態(tài)的打印機(jī)狀態(tài)API 322、以及可運(yùn)行以分析命令和/或文件的分析API 324,例如已經(jīng)被發(fā)送到標(biāo)記和標(biāo)簽打印機(jī)108的XML命令和/或XML文件。一經(jīng)分析,XML命令被解釋和使用來(lái)控制標(biāo)記和標(biāo)簽打印機(jī)108所提供的控制輸出。除了設(shè)備API 320、打印機(jī)狀態(tài)API 322以及分析API 324,API 302優(yōu)選地還包括紙張?zhí)幚鞟PI 326,其被提供以支持用于一個(gè)或多個(gè)標(biāo)記和標(biāo)簽尺寸的多種紙張功能,例如包括打印進(jìn)給、格式紙進(jìn)給、行進(jìn)給、測(cè)試進(jìn)給等。另外,所示出的聲音API 3 提供音頻控制,例如在標(biāo)記和標(biāo)簽打印機(jī)108中的報(bào)警器、蜂鳴器或其它聲音部件。此外,所示出的傳感器API 330可運(yùn)行以從傳感器設(shè)備(例如,標(biāo)記縫隙傳感器和標(biāo)記記號(hào)傳感器)接收標(biāo)記和標(biāo)簽打印機(jī)108提供的信息,并且可運(yùn)行以確定例如,在標(biāo)記的末端到達(dá)時(shí)、在紙帶的末端到達(dá)時(shí)、以及在標(biāo)記或紙帶的末端幾乎到達(dá)時(shí)的各種條件。在一個(gè)實(shí)施例中,傳感器 API 330運(yùn)行以在判定這些條件中的一個(gè)或多個(gè)發(fā)生時(shí)發(fā)出警告。圖3中示出的其它API 302包括事件API 332,其接收并處理在標(biāo)記和標(biāo)簽打印機(jī)108中發(fā)生的各種事件;位處理 API 334,其運(yùn)行以在必要時(shí)執(zhí)行數(shù)據(jù)的位操作;以及錯(cuò)誤處理API 336,其運(yùn)行以處理標(biāo)記和標(biāo)簽打印機(jī)108可能發(fā)生的錯(cuò)誤,例如功率輸出、存儲(chǔ)器錯(cuò)誤、卡紙錯(cuò)誤等。因此根據(jù)優(yōu)選實(shí)施例,例如以L(fǎng)UA編程語(yǔ)言或以C編程語(yǔ)言開(kāi)發(fā)了多個(gè)API 302, 并在標(biāo)記和標(biāo)簽打印機(jī)108中實(shí)施而不需要解釋器通過(guò)現(xiàn)有的控制語(yǔ)言(例如,SBPL或者 ZPL)獲取打印功能。除了圖3中所示出的API 302,這里設(shè)想出在一個(gè)或多個(gè)實(shí)施例中實(shí)施的多種其它輔助功能。例如,為了快速且簡(jiǎn)單地開(kāi)發(fā),支持克隆表格和/或改變表格的功能。其它示例包括用于確定作為顛倒錯(cuò)誤字符串值的函數(shù)(例如,“errfstrO”)的錯(cuò)誤值的功能,用于在多個(gè)格式(例如,XML、LUA或者其它)中的一個(gè)或多個(gè)中存儲(chǔ)表格的功能, 用于加載多種格式支持的表格以及支持用于菜單和快捷方式的多種讀寫(xiě)語(yǔ)言的功能。
圖4示出了根據(jù)優(yōu)選實(shí)施例提供的由API 302所限定的由標(biāo)記和標(biāo)簽打印機(jī)108 打印的示例標(biāo)記400。如圖4所示,定位點(diǎn)402限定在最左上角(例如,經(jīng)由hMag值和vMag 值)和并由標(biāo)記400上打印的文本數(shù)據(jù)的位置所限定,而不管打印文本數(shù)據(jù)的各自方向或位置。雖然在圖4中示出了經(jīng)由標(biāo)記和標(biāo)簽打印機(jī)108打印的標(biāo)記400的進(jìn)紙方向404。 除了打印在標(biāo)記400上的文本數(shù)據(jù)外,還提供了例如經(jīng)由打印繪制API308所繪制的圖形圖像 406。圖5示出了為待在標(biāo)記400上提供的數(shù)據(jù)區(qū)500所限定的示例數(shù)據(jù)區(qū)尺寸,并且指出了用于數(shù)據(jù)區(qū)500的最左上角表示相應(yīng)的水平和垂直位置(“hPos”和“vPos”)502和最右下角位置的水平和垂直位置504。此外,數(shù)據(jù)定向函數(shù)506(例如,dir (0,.359))指出當(dāng)數(shù)據(jù)數(shù)據(jù)區(qū)500輸出到標(biāo)記400上時(shí)的相對(duì)定向。圖6示出了根據(jù)優(yōu)選實(shí)施例提供的由API 302所限定的由標(biāo)記和標(biāo)簽打印機(jī)108 打印的另一個(gè)示例標(biāo)記600。在圖6所示的示例標(biāo)記600中,在標(biāo)記600的相應(yīng)位置608處提供了示出的多種顏色602、604和606。因此,如此處所示出和描述的,LUA API是經(jīng)由LUA 解釋器通過(guò)實(shí)施API結(jié)合標(biāo)記和標(biāo)簽打印機(jī)108固件和LUA解釋器的接口,客戶(hù)可以創(chuàng)建實(shí)施優(yōu)選打印操作的LUA應(yīng)用程序?,F(xiàn)在參考圖7A,在優(yōu)選實(shí)施例中標(biāo)記和標(biāo)簽打印機(jī)108設(shè)置有兩種存儲(chǔ)器閃存 702和同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(SDRAM) 704。閃存702 (優(yōu)選作為ROM的替代使用)在其它合適的數(shù)據(jù)中存儲(chǔ)標(biāo)記和標(biāo)簽打印機(jī)108引導(dǎo)程序代碼、基本固件(例如,驅(qū)動(dòng)器、條形碼格式等)、LUA API和LUA虛擬機(jī)。如現(xiàn)有技術(shù)中已知的,存儲(chǔ)在閃存702中的引導(dǎo)程序代碼在打印機(jī)108的引導(dǎo)處理過(guò)程中運(yùn)行。在優(yōu)選實(shí)施例中,標(biāo)記和標(biāo)簽打印機(jī)108的基本固件和LUA API以壓縮格式存儲(chǔ)在閃存702中,由此保存閃存702中的存儲(chǔ)空間。此外, 待配置和引入現(xiàn)有應(yīng)用程序的定制編程(例如,包括LUA應(yīng)用程序和/或附加編程)代碼優(yōu)選存儲(chǔ)在閃存702中。在標(biāo)記和標(biāo)簽打印機(jī)108引導(dǎo)處理之前,優(yōu)選地,SDRAM 704大體上是空的,并準(zhǔn)備接收數(shù)據(jù)。如圖8所示,當(dāng)標(biāo)記和標(biāo)簽打印機(jī)108在引導(dǎo)程序時(shí),標(biāo)記和標(biāo)簽打印機(jī)108 固件、LUA API和LUA虛擬機(jī)優(yōu)選地以壓縮格式選存儲(chǔ)在閃存702中。在引導(dǎo)程序之后,所述固件、LUA API和LUA虛擬機(jī)被解壓縮并以解壓縮格式提供到SDRAM 704。之后,在適當(dāng)時(shí),標(biāo)記和標(biāo)簽打印機(jī)108的基本固件、驅(qū)動(dòng)器條形碼數(shù)據(jù)、標(biāo)記格式、分析程序、圖像緩沖器和其它數(shù)據(jù)為運(yùn)行而暫時(shí)存儲(chǔ)在SDRAM 704中。此外,例如以L(fǎng)UA編程語(yǔ)言開(kāi)發(fā)的應(yīng)用程序被提供給SDRAM 704。如圖8所示,并如此處所描述的,LUA程序優(yōu)選地包括在適當(dāng)時(shí)用于待配置并“引入”應(yīng)用程序的附加編程代碼(以“IP”示出)的占位符。參考圖9,LUA虛擬機(jī)優(yōu)選經(jīng)由與打印機(jī)108的固件、LUA API和分析程序有關(guān)的 SDRAM 704運(yùn)行。這樣根據(jù)優(yōu)選實(shí)施例,標(biāo)記和標(biāo)簽打印機(jī)108在打印操作過(guò)程中并不獨(dú)占閃存702,而是經(jīng)由為了運(yùn)行而存儲(chǔ)在SDRAM 704中的未壓縮數(shù)據(jù)和指令來(lái)運(yùn)行。該實(shí)施例相對(duì)于典型的現(xiàn)有技術(shù)的系統(tǒng)和方法而言是優(yōu)選的,因?yàn)镾DRAM 704比閃存702運(yùn)行地更快且更有效,并且SDRAM 704在完成打印機(jī)操作之后能夠清除解壓縮的數(shù)據(jù)和指令。結(jié)合圖9和圖10,在打印操作過(guò)程中,結(jié)合此處教導(dǎo)提供的LUA API經(jīng)由LUA虛擬機(jī)運(yùn)行,并與標(biāo)記和標(biāo)簽打印機(jī)108固件接口用于輸出存儲(chǔ)在標(biāo)記和標(biāo)簽打印機(jī)108的緩沖器內(nèi)的標(biāo)記圖像或其它目標(biāo)。優(yōu)選地,標(biāo)記和標(biāo)簽打印機(jī)108從優(yōu)選由LUA API所限定的多個(gè)輸入源接收指令(例如,經(jīng)由LUA API)和/或數(shù)據(jù)。例如,可以經(jīng)由適當(dāng)?shù)妮斎攵丝?包括輸入部件212)、通信端口、網(wǎng)絡(luò)接口 208等來(lái)掃描、鍵入或提供和接收數(shù)據(jù)。因此如此處所描述和聲明的以及附圖所示出的,標(biāo)記和標(biāo)簽打印機(jī)108功能被優(yōu)選地增強(qiáng)、修改或增加為與打印機(jī)108固件接口的API 302的功能。優(yōu)選地利用高級(jí)編程語(yǔ)言(例如,LUA編程語(yǔ)言)來(lái)定義應(yīng)用,由此預(yù)先排除需要個(gè)人精通特定打印機(jī)模式固件屬性編程語(yǔ)言,或者需要獲取專(zhuān)有的開(kāi)發(fā)工具來(lái)修改打印機(jī)的固件。此外,結(jié)合LUA應(yīng)用或排除LUA應(yīng)用,可接收并執(zhí)行待“引入”到當(dāng)前運(yùn)行的LUA引用的附加編程代碼。因此,為應(yīng)用開(kāi)發(fā)可激活打印機(jī),而不需利用打印機(jī)的專(zhuān)有解釋語(yǔ)言編寫(xiě)應(yīng)用,并且作為在應(yīng)用中提供的占位符的功能可以將編程代碼弓I入運(yùn)行的應(yīng)用中。因此,根據(jù)本文的教導(dǎo),可以開(kāi)發(fā)和配置與先前執(zhí)行的打印機(jī)應(yīng)用接口的新的打印機(jī)應(yīng)用,該先前執(zhí)行的打印機(jī)應(yīng)用具有一個(gè)或更多占位符的功能。不用代替整個(gè)程序和重啟打印機(jī)就可提供新打印機(jī)功能。因此,通過(guò)使得用戶(hù)能夠增加打印機(jī)功能到例如先前部署的LUA程序上,克服了現(xiàn)有技術(shù)中關(guān)于時(shí)間和編程的限制。根據(jù)本文的教導(dǎo),用戶(hù)不需修改先前配置的程序和重配置程序到打印機(jī)。而是,當(dāng)已經(jīng)提供了新的應(yīng)用時(shí)以占位符所提供的定制應(yīng)用可以識(shí)別并且經(jīng)由占位符可以引入新的應(yīng)用到先前配置的應(yīng)用,以快速且方便地增強(qiáng)打印機(jī)功能。雖然以具體實(shí)施例描述并示出了本發(fā)明,但是對(duì)于本領(lǐng)域的技術(shù)人員而言許多其它修改和變型都是顯而易見(jiàn)的。因此,優(yōu)選的是本發(fā)明并不受限于本文的具體公開(kāi)。
1權(quán)利要求
1.一種修改打印機(jī)功能的方法,所述打印機(jī)設(shè)置有固件以及用于控制打印操作并與所述固件接口的第一編程代碼,所述方法包括開(kāi)發(fā)所述第一編程代碼,當(dāng)在處理器可讀介質(zhì)上執(zhí)行時(shí),所述第一編程代碼與所述打印機(jī)固件接口并且為所述打印機(jī)提供第一功能,其中所述第一編程代碼包括至少一個(gè)占位符;開(kāi)發(fā)第二編程代碼,當(dāng)在處理器可讀介質(zhì)上執(zhí)行時(shí),所述第二編程代碼與所述第一編程代碼接口并且提供與所述第一功能不同的打印機(jī)的第二功能;提供并執(zhí)行在處理器可讀介質(zhì)上的所述第一編程代碼,并且將所述第一編程代碼與所述固件接口以提供所述第一功能;并且提供并執(zhí)行在處理器可讀介質(zhì)上的所述第二編程代碼,并且將所述第二編程代碼與所述第一編程代碼接口以提供所述第二功能,其中所述第二編程代碼作為所述至少一個(gè)占位符的功能而被執(zhí)行。
2.根據(jù)權(quán)利要求1所述的方法,其中所述第一編程代碼在執(zhí)行所述第二編程代碼之前執(zhí)行。
3.根據(jù)權(quán)利要求2所述的方法,其中在所述第二編程代碼被提供和執(zhí)行之前以及在所述第二編程代碼被提供和執(zhí)行時(shí),不重啟所述第一編程代碼和所述打印機(jī)。
4.如權(quán)利要求1所述的方法,其中在執(zhí)行所述第二編程代碼時(shí)不修改所述第一編程代碼。
5.如權(quán)利要求1所述的方法,其中所述第一編程代碼執(zhí)行命令以確定是否已經(jīng)提供所述第二編程代碼到所述處理器可讀介質(zhì)。
6.如權(quán)利要求1所述的方法,其中所述第一編程代碼和所述第二編程代碼是以不同的編程語(yǔ)言編寫(xiě)的。
7.如權(quán)利要求1所述的方法,其中所述第一編程代碼和所述第二編程代碼是以相同的編程語(yǔ)言編寫(xiě)的。
8.如權(quán)利要求1所述的方法,進(jìn)一步包括開(kāi)發(fā)第三編程代碼,當(dāng)在處理器可讀介質(zhì)上執(zhí)行時(shí),所述第三編程代碼與所述第一編程代碼接口并且為所述打印機(jī)提供與所述第一功能和所述第二功能不同的打印機(jī)的第三功能;在所述處理器可讀介質(zhì)上提供并執(zhí)行所述第三編程代碼,并且將所述第三編程代碼與所述第一編程代碼接口以提供所述第三功能,其中所述第三編程代碼作為所述至少一個(gè)占位符的功能而被執(zhí)行。
9.如權(quán)利要求1所述的方法,其中所述第一編程代碼和所述第二編程代碼由解釋器標(biāo)記。
10.如權(quán)利要求1所述的方法,其中所述打印機(jī)是標(biāo)記和標(biāo)簽打印機(jī)。
11.如權(quán)利要求1所述的方法,其中所述第一編程代碼以腳本語(yǔ)言編寫(xiě)。
12.如權(quán)利要求1所述的方法,其中所述第一編程代碼以L(fǎng)UA編程語(yǔ)言編寫(xiě)。
13.—種修改打印機(jī)功能的系統(tǒng),所述系統(tǒng)包括 具有所述打印機(jī)功能的打印機(jī);所述打印機(jī)提供的固件,當(dāng)在所述打印機(jī)上執(zhí)行所述固件時(shí),其控制打印操作;第一編程代碼,其在處理器可讀介質(zhì)上執(zhí)行,其中所述第一編程代碼包括提供所述打印機(jī)的第一功能的命令并且還包括至少一個(gè)占位符;第二編程代碼,其在所述處理器可讀介質(zhì)上執(zhí)行,其中所述第二編程代碼與所述第一編程代碼接口并且提供與所述第一功能不同的打印機(jī)的第二功能;以及處理器可讀介質(zhì),在其上執(zhí)行所述第一編程代碼和所述第二編程代碼, 其中所述第二編程代碼作為所述至少一個(gè)占位符的功能而被執(zhí)行。
14.如權(quán)利要求13所述的系統(tǒng),其中所述第一編程代碼在執(zhí)行所述第二編程代碼之前執(zhí)行。
15.如權(quán)利要求14所述的系統(tǒng),其中在所述第二編程代碼被提供和執(zhí)行之前以及在所述第二編程代碼被提供和執(zhí)行時(shí),不重啟所述第一編程代碼。
16.如權(quán)利要求13所述的系統(tǒng),在執(zhí)行所述第二編程代碼時(shí)不修改所述第一執(zhí)行代碼。
17.如權(quán)利要求13所述的系統(tǒng),其中所述第一編程代碼執(zhí)行命令以確定是否已經(jīng)將所述第二編程代碼提供到所述處理器可讀介質(zhì)。
18.如權(quán)利要求13所述的系統(tǒng),其中所述第一編程代碼和所述第二編程代碼是以不同的編程語(yǔ)言編寫(xiě)的。
19.如權(quán)利要求13所述的系統(tǒng),其中所述第一編程代碼和所述第二編程代碼是以相同的編程語(yǔ)言編寫(xiě)的。
20.如權(quán)利要求13所述的系統(tǒng),進(jìn)一步包括第三編程代碼,當(dāng)在所述處理器可讀介質(zhì)上執(zhí)行時(shí),所述第三編程代碼與所述第一編程代碼接口并且提供與所述第一功能和所述第二功能不同的打印機(jī)的第三功能;其中所述第三編程代碼在所述處理器可讀介質(zhì)上提供和執(zhí)行,并與所述第一編程代碼接口以提供所述第三功能,其中所述第三編程代碼作為所述至少一個(gè)占位符的功能而被執(zhí)行。
21.如權(quán)利要求13所述的系統(tǒng),進(jìn)一步包括解釋器,其標(biāo)記所述第一編程代碼和所述第二編程代碼。
22.如權(quán)利要求13所述的系統(tǒng),其中所述打印機(jī)為標(biāo)記和標(biāo)簽打印機(jī)。
23.如權(quán)利要求13所述的系統(tǒng),其中所述第一編程代碼以腳本語(yǔ)言編寫(xiě)。
24.如權(quán)利要求13所述的系統(tǒng),其中所述第一編程代碼以L(fǎng)UA編程語(yǔ)言編寫(xiě)。
25.如權(quán)利要求13所述的系統(tǒng),其中執(zhí)行所述第一編程代碼進(jìn)一步包括在LUA虛擬機(jī)上解釋所述第一編程代碼。
全文摘要
一種修改打印機(jī)功能的方法和系統(tǒng)。該打印機(jī)設(shè)置有固件以及與固件接口用于控制打印機(jī)操作的第一編程代碼。編程代碼包括至少一個(gè)占位符。提供第二編程代碼,當(dāng)在處理器可讀介質(zhì)上執(zhí)行時(shí)所述第二編程代碼時(shí),編程代碼作為所述至少一個(gè)占位符的功能而被執(zhí)行。
文檔編號(hào)G06F9/54GK102483709SQ200980159768
公開(kāi)日2012年5月30日 申請(qǐng)日期2009年6月8日 優(yōu)先權(quán)日2009年6月8日
發(fā)明者S·基伯 申請(qǐng)人:佐藤株式會(huì)社, 株式會(huì)社佐藤知識(shí)財(cái)產(chǎn)研究所
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1