jQuery打印插件(適用于針式打印) :Chest-Print
使用場景
Chest-Print 適用于針式打印機等需要定位打印的需求,如本人使用場景是打印快遞單.
如何使用
插件主體是 as3 編寫的 swf 文件,擴充部分寫了一個 jQuery 小插件,所以需要引入 jQuery 包,swfobject 包。
-
創建一個空 DIV 并創建 jQuery 對象:
$("#printAll").printAll();
-
需要一個 JSON 數組參數,數組中的對象為多 Page 打印,一個對象代表一個Page;Page對象中,存在width,height,frontSize(拼寫錯誤,囧),content 屬性;Page 對象中的 Content 屬性是一個打印元素對象數組,元素對象又有 left,top,name(打印無效屬性,后臺對象轉化過來的屬性),value(打印內容),width 屬性,例子如下,這是打印一頁快遞單:
var pages = [ { "width": "900", "height": "600", "frontSize": "12", "content": [ { "left": "343", "top": "345", "name": "shipName", "value": "收貨人小凳子", "width": "130" }, { "left": "126", "top": "373", "name": "shipAddress", "value": "山東省 臨沂市 費縣 世茂大道", "width": "309" }, { "left": "142", "top": "308", "name": "shipZip", "value": "150000", "width": "130" }, { "left": "219", "top": "434", "name": "shipMobile", "value": "13569696969", "width": "179" }, { "left": "358", "top": "164", "name": "deliverUserName", "value": "王二虎", "width": "134" }, { "left": "127", "top": "192", "name": "deliverAddress", "value": "遼寧省 沈陽市市轄區 淮海路", "width": "253" }, { "left": "136", "top": "131", "name": "deliverZip", "value": "1456253", "width": "161" }, { "left": "210", "top": "258", "name": "deliverMobile", "value": "15369554687", "width": "153" } ] } ]
-
調用打印方法,彈出打印設置,進行打印
$("#printAll").printAll.print(pages);
注意事項
-
首先要注意flash安全沙箱問題,請在測試環境下測試(ip或域名),文件結構會報錯.
-
同樣是flex問題,需要彈出打印設置系統設置,并不能直接打印(安全相關).
-
chrome瀏覽器flash插件有2個,需要禁用自帶flash插件,否則打印不出內容.
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!