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 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!