一、開放源碼項目簡介
用于小表格打印,目前適用于Windows(Windows 7、Windows 10)。
是使用php laravel搭建的一個小票打印的Api服務(wù),使用php的mike42/escpos-php庫。
內(nèi)容已包含一個獨立解壓版的,不需另行安裝php環(huán)境。
二、功能概述
laravel搭建的一個小票打印的Api服務(wù),支持Win10/Win7 集成php獨立環(huán)境 Window ticket printer。
小票打印 添加了html和html模板打印,支持二維碼和條形碼。
三、技術(shù)選型
PHP、Laravel
四、使用方法及界面展示
使用方法
安裝服務(wù)
- 下載源碼的zip包
- 解壓源碼包(注意:不要解壓到中文路徑)
- 運行 quick-(打開配置頁) 或 printer-(不打開配置頁)
配置頁(或使用下面的接口調(diào)用進(jìn)行配置)
- 安裝后,會自動啟動服務(wù),并打開打印配置頁面
- 打印配置頁URL : http://localhost:8077/printer-setting
- 配置頁:
- 打印效果:
- 配置頁說明
在操作之前,請先在安裝好小票打印機(jī)及驅(qū)動。 1.添加打印機(jī):選擇安裝的小票打印機(jī),點擊“+”號 如果列表內(nèi)為空,則新添加的打印機(jī)會成為默認(rèn)打印機(jī)。 注意:“虛擬打印機(jī)”是無法添加的 2.點擊打印測試頁,會跳轉(zhuǎn)到預(yù)覽頁,點擊右側(cè),打印按鈕。
從接口進(jìn)行配置
- 獲取所有打印機(jī)
GET http://localhost:8077/api/printer/get-local-printers
- 獲取現(xiàn)有打印機(jī)配置
GET http://localhost:8077/api/printer/get-config
- 配置添加的小票打印機(jī)
POST http://localhost:8077/api/printer/set-printer-config 參數(shù):JSON {"printer_name":"POS-58","is_default":true}
- 設(shè)置默認(rèn)打印機(jī)
POST http://localhost:8077/api/printer/set-defult-printer 參數(shù):JSON {"printer_name":"POS-58"}
使用圖片打印
- 因為各種小票打印機(jī)支持的功能差異太大,所以就只實現(xiàn)圖片打印,市場上80%的小票打印機(jī)都支持圖片。
- 測試頁就是使用html轉(zhuǎn)canvas圖片進(jìn)行打印的
POST http://localhost:8077/api/job/print-image-data-url 參數(shù):JSON printer_name: 可以不傳或為空,則使用默認(rèn)打印機(jī) {"printer_name":"POS-58","image_data":"data:image/png;base64,..."}
二維碼和條形碼支持
在使用HTML或HTML模板打印時可使用class qrcode和barcode 對二維碼條形碼進(jìn)行標(biāo)記 二維碼和條形碼的更多參數(shù)配置,可以通過節(jié)點data屬性進(jìn)行傳遞
示例: 二維碼: 內(nèi)容: 二維碼的更多屬性參考: <div class="qrcode center" data-widht=128 data-height=128 data-color-light="#ffffff" data-color-dark="#000000" data-text=""> 條形碼: 內(nèi)容: nop-printer 二維碼的更多屬性參考: <div class="barcode" data-format="pharmacode" data-display-value=false data-width=4 data-height=60 data-text="nop-printer">
使用HTML打印
請求:POST-JSON: {"html":"<p>HELLO NOP</p>","printer_name":null} 響應(yīng): { "code": 0, "msg": "操作成功", "data": { "task_id": 14 } }
使用HTML模板打印
請求:POST-JSON: {"printer_name":null,"tpl_name":"simple-tpl","tpl_params":{"user":"NOP"}} 響應(yīng): { "code": 0, "msg": "操作成功", "data": { "task_id": 14 } }
HTML打印模板管理
- 模板采用lodash template 模板語法
保存模板(模板名不存在則創(chuàng)建)
請求:POST-JSON: {"attrs":{"tpl_name":"simple-tpl","tpl_content":"<p>HELLO <%=user%></p>","params_examples":"{\"user\":\"WORLD\"}"}} 響應(yīng): { "code": 0, "msg": "操作成功", "data": { "tpl_name": "simple-tpl", "tpl_content": "<p>HELLO <%=user%></p>", "params_examples": "{\"user\":\"WORLD\"}", "updated_at": "2021-02-19T16:49:38.000000Z", "created_at": "2021-02-19T16:49:38.000000Z", "id": 2 } }
查詢模板
請求:POST-JSON: {"tpl_name":"simple-tpl"} 響應(yīng): "data": { "tpl_name": "simple-tpl", "tpl_content": "<p>HELLO <%=user%></p>", "params_examples": "{\"user\":\"WORLD\"}", "updated_at": "2021-02-19T16:49:38.000000Z", "created_at": "2021-02-19T16:49:38.000000Z", "id": 2 } }
刪除模板
請求:POST-JSON: {"tpl_name":"simple-tpl"} 響應(yīng): { "code": 0, "msg": "操作成功", "data": null }
啟動服務(wù)
運行:printer-
停止服務(wù)
運行:printer-stop.bat
注冊系統(tǒng)服務(wù)啟動項
運行:system-service register
注銷系統(tǒng)服務(wù)啟動項
運行:system-service unregister
五、開源協(xié)議
使用MIT開源協(xié)議
六、源碼地址
私信回復(fù):小票打印
1.《打印機(jī)小票怎么打看這里!「開源」支持HTML模板、圖片、二維碼和條形碼打印的小票打印程序》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡(luò)信息知識,僅代表作者本人觀點,與本網(wǎng)站無關(guān),侵刪請聯(lián)系頁腳下方聯(lián)系方式。
2.《打印機(jī)小票怎么打看這里!「開源」支持HTML模板、圖片、二維碼和條形碼打印的小票打印程序》僅供讀者參考,本網(wǎng)站未對該內(nèi)容進(jìn)行證實,對其原創(chuàng)性、真實性、完整性、及時性不作任何保證。
3.文章轉(zhuǎn)載時請保留本站內(nèi)容來源地址,http://f99ss.com/why/3183658.html