国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

XID580ie證卡打印機雙面防偽自動打印程序的設計與實現(xiàn)

2014-10-16 09:17:28張潤久
環(huán)境衛(wèi)生工程 2014年3期
關鍵詞:防偽雙面打印機

吳 迪,張潤久

(1.天津市市容和園林管理委員會信息中心,天津 300381;2.天津凱舜科技發(fā)展有限公司,天津 300384)

依據(jù)《天津市戶外廣告設置管理規(guī)定》,除有固定線路運營的公交車輛可以設置車體廣告外,其他車輛禁止設置車體廣告。企事業(yè)單位需要在本單位車輛上設置單位名稱和標識的,應按照有關規(guī)定提交相關資料報天津市行政許可服務中心市容委窗口辦理行政許可手續(xù)。

為貫徹這一規(guī)定,加強對各企事業(yè)單位車輛在車身上設置廣告和單位名稱(標識)的管理,開發(fā)制作了非接觸式《天津市車體廣告(單位名稱、標識)行政許可證》卡。

XID580ie是一款功能強大的證卡打印機,具有雙面打印、紫外線防偽打印等功能。車身廣告管理卡由1張IC卡和1張ID卡組成,采用此打印機進行手工雙面防偽打印。在CardFive軟件中設置打印機狀態(tài),每套卡需要分別打印2張卡4面共4次,不但工作量大,并且經(jīng)常出現(xiàn)錯打、重打的問題,造成了卡片和人力的浪費。實現(xiàn)自動雙面防偽打印成為了迫切的需求。

1 XID580ie的設置和運行狀態(tài)監(jiān)視

XID580ie在Windows系統(tǒng)中安裝驅動程序后,成為標準的Windows打印機。在打印機屬性選項卡中可以設置防偽圖片、打印方向等狀態(tài),如圖1所示。

通過對打印過程的分析,發(fā)現(xiàn)在打印過程啟動后,打印隊列中的內容很快消失,在XID580ie的打印隊列控制中有打印內容的顯示,并可觀察到打印的數(shù)量和當前打印的狀態(tài),如圖2所示。

2 可能的實現(xiàn)方法

首先,采用C#設計了Windows打印程序。在Windows API中找到了系統(tǒng)調用DocumentProperties和EnumPrinterData用來獲取和設置防偽和打印方向。但是,通過對這些項目的設置,只能打印出無防偽的單面卡片,無法得到雙面防偽打印的效果。

然后,通過觀察其他的Windows程序,如記事本、寫字板也無法在設置了雙面防偽的情況下得到正常的結果。觀察了CardFive的正常打印過程,但CardFive無法進行二次開發(fā),采用Windows消息的方法可以控制窗口的行為,但是,過程復雜,實現(xiàn)自動打印難度較大。

最后,經(jīng)過對其他軟件的實驗,發(fā)現(xiàn)使用Word也可以得到正常的打印效果,采用C#重新設計了打印程序,在程序中通過VSTO(Visual Studio to Office)技術自動生成Word文件,并打印該Word文件,經(jīng)過測試,C#采用VSTO技術的打印程序無法將內容正常發(fā)送到打印機。但是,在Word中進行打印總能得到正確的結果,能夠在Word中進行編程控制的方法,只有Word宏可以用,至此,采用Word宏生成文件并進行打印成為了最終惟一的選擇。

3 采用Word宏進行打印的流程和方法

宏在Microsoft Office系列軟件中有著廣泛的應用,使用Word宏可以調用幾乎全部的Windows API函數(shù),宏編程的語言稱為VBA(Visual Basic for Applications),宏的開發(fā)也使用了與Visual Basic的界面和格式。Word宏可以調用Word中的全部文字處理功能,同時,也可以對操作系統(tǒng)進行操作,具有強大的功能。Word宏編程簡單,通過錄制宏即可直接生成宏代碼,不需要專門記憶。

程序流程如圖3所示。

程序啟動,開始錄入信息,并在屏幕上實現(xiàn)類似所見即所得的效果,IC卡正面屏幕截圖如圖4所示。

用戶確認后,屏幕的內容與屏幕底紋圖片被保存為jpg格式的圖形文件。

設計Word模版文件用來對IC卡和ID卡分開處理,并保存打印機和頁面設置等信息。

在C#中采用Process.Start方法啟動Word并打開指定的模版文件。Word啟動后,會自動執(zhí)行AutoOpen宏,后續(xù)的程序都在這個宏中運行。使用宏Selection.InlineShapes.Addpicture裝載生成的圖片文件,并使之充滿頁面,使用ActiveDocument.SaveAs另存為指定的文件名留作備份,另存的另外一個目的是防止在窗口關閉時出現(xiàn)確認對話框。而后,調用Application.PrintOut宏進行打印。打印必須使用后臺方式進行,命令發(fā)出后,打印隊列中的數(shù)據(jù)需要發(fā)送到打印機,此時需要主程序繼續(xù)等待一段時間,否則將導致無法打印。打印內容發(fā)出后,主程序通過向Word發(fā)出WM_QUIT消息關閉Word,繼續(xù)下一張卡的錄入。

采用Word宏,需要在Word宏安全性中進行設置,如圖5所示。

采用Word宏會降低系統(tǒng)的安全性,但是,在沒有外網(wǎng)的環(huán)境中,這個設置還是可以接受的。

4 程序的易用性設計

鍵盤輸入控制。在程序中對全部的文本框(TextBox)的按鍵事件進行了處理,按回車鍵可以將光標自動跳轉到下一個文本框。實現(xiàn)了無鼠標操作。

輸入法控制。車輛類型、標識內容等項目,不需要輸入數(shù)字,只能輸入漢字。在這些輸入項目中,程序控制自動啟動漢字輸入法。標識規(guī)格聯(lián)系電話等需要輸入的內容全部是數(shù)字,在光標進入標識規(guī)格文本框時,自動切換到英文鍵盤輸入狀態(tài)。

輸入內容控制。在批量錄入的情況下,大部分輸入內容是相同的,針對可能重復錄入的內容,在該項目錄入完畢后自動保存到注冊表。下次錄入的時候,仍然會顯示前面的結果。這樣也減少了程序意外終止造成的重復錄入。

流程控制。按照上報的順序設計了輸入流程,卡片每一面作為1個對話框輸入,每個對話框都提供了預覽功能,使用者可以隨時看到最終打印的結果。

文字位置控制。程序可以根據(jù)輸入內容的多少在一定范圍內自動調整位置和字體大小,盡可能保證文本的均勻分布。

5 結束語

采用Word宏進行打印的方法,具有一定的普遍性,隨著軟件功能的豐富,經(jīng)常會出現(xiàn)某個功能很好用,但是,自己的程序中卻無法調用的情況,并且,在沒有開發(fā)文檔的情況下,采用程序調用另外程序的方法得到最終的結果,應當是最現(xiàn)實并且最可能實現(xiàn)的途經(jīng)。

通過以上方法設計的程序,從2012年3月試用,經(jīng)過不斷修改,7月正式使用。至今運行超過1 a,在Word 2003和Word 2007下都取得了同樣的效果。程序運行穩(wěn)定,差錯明顯減少,極大提高了打印速度和正確率。在城市車體廣告管理方面,節(jié)省大量成本,提高工作效率。

[1]Schildt H.C#完全手冊[M].朱德爽,胡鳳燕,胡復明,譯.北京:電子工業(yè)出版社,2002.

[2]何振林,胡綠慧.MS Office與VBA高級應用案例教程[M].北京:中國水利水電出版社,2010.

猜你喜歡
防偽雙面打印機
INTEGRITYTM ECO100再生縫紉線引入防偽技術
你知道古代圣旨和紙鈔是怎樣防偽的嗎
科學大眾(2021年9期)2021-07-16 07:02:42
雙面人
學生天地(2020年20期)2020-06-09 02:57:12
民國時期紙鈔上的防偽暗記
絲路藝術(2017年5期)2017-04-17 03:12:01
雙面復大
史上最強的雙面間諜
海外星云(2016年7期)2016-12-01 04:18:02
另類3D打印機
打印機基板大型注塑模具設計
中國塑料(2016年7期)2016-04-16 05:25:55
FDM型混色3D打印機的設計
復制粘貼打印機
福建省| 象州县| 彰化县| 耿马| 丰顺县| 鄂托克前旗| 金塔县| 淅川县| 波密县| 潮州市| 卢龙县| 南昌市| 重庆市| 肃宁县| 繁昌县| 横峰县| 资溪县| 兴国县| 宜春市| 泰顺县| 永泰县| 休宁县| 杭锦旗| 特克斯县| 广元市| 普宁市| 镇江市| 瑞丽市| 余干县| 镇原县| 定远县| 子洲县| 绥化市| 深圳市| 木里| 铅山县| 资源县| 重庆市| 株洲市| 通城县| 滕州市|