Epson Pos Printer for .net

注:因發現各網站爬蟲隨意收集文章,故作此聲明:版權歸原做者(Leaf.Duan)全部,轉載還請著名出處,謝謝php

設備信息git

Epson TM-T88IV Thermal Printer,愛普生 TM-T88IV 熱敏式打印機,主要用來打印票據(receipt)github

操做系統:windows 7 Ultimate x64windows

 

環境配置網絡

要利用 Microsoft Point of Service for .NET,針對 Epson 的設備,要下載如下兩個安裝包,以及作適當配置:less

1. Microsoft Point of Service for .NET v1.12 下載 字體

    PS:發現最新版 v1.14,EPSON 是不支持,用此 API 找不到設備網站

2. EPSON OPOS ADK for .NET 下載spa

要先安裝微軟的那個,再安裝愛普生的那個。安裝好了這兩個東西,就要利用愛普生的 SetupPOS 給物理設備 Printer 映射一個邏輯名 Logical Name,用於程序使用。操作系統

本人使用的是 Wire Network 方式,所以須要設置 Printer 的 IP 地址,能夠參考 How to Setting EPSON TM-T88IV Printer IP Address 

 

打印

接下來應該就是實戰階段,如何代碼操做打印,這是個人一個封裝 PosPrinter.cs 代碼在 Github 上面,具體使用不須要作說明了吧。

 

*Receipt Template*

打印內容模板問題,關於此,網絡資料真實稀缺,例如要打印以下內容:

             Leaf.Duan

   0001

             *請留意叫號

       22:53:18 18-June-2014

有字體加粗,加大,以及拉伸,文字居中對齊等基本格式控制,還有關於調節紙張間距 Feed 控制和 Cut Paper 設置等等,具體能夠參考 Microsoft API ,給一個如上 Receipt Template:

 1 /*
 2 ESC|cAESC|4C{1}{0}{0}{0}ESC|bCESC|5hCESC|5vC{2}{0}ESC|NESC|cAESC|4C{0}{0}{3}{0}{0}{0}ESC|NESC|cA{4}{0}ESC|5lFESC|100P
 3 **/
 4 
 5 ESC|cA       // 文本居中
 6 ESC|4C       // 位置大小加倍(高寬加倍)
 7 Leaf.Duan    // {1}
 8 {0}
 9 {0}
10 {0}
11 ESC|bC       // 字體加粗
12 ESC|5hC      // 水平拉伸 513 ESC|5vC      // 垂直拉伸 514 0001         // {2}
15 {0}
16 ESC|N         // 設置恢復正常,默認設置 
17 ESC|cA        // 文字居中
18 ESC|4C        // 文字大小加倍
19 {0}
20 {0}
21 *請留意叫號    // {3}
22 {0}
23 {0}
24 {0}
25 ESC|N         // 設置恢復正常,默認設置 
26 ESC|cA        // 文字居中
27 22:55:18 18-June-2014  // {4}
28 {0}
29 ESC|5lF       // Feed 530 ESC|100P      // Cut Paper 100%,就是剪紙 100%,具體比例能夠按需求設置
31 
32 /* 以上 {0} 表明換行 Environment.NewLine; ESC 能夠用 \x1B 代替,不過要注意轉義; ESC 也能夠用 ((char) 27).ToString() 作 Replace  */

 

疑問

如何使用 EPSON 打印機驅動 API,如 StatusAPI 進行打印?由於 EPSON 官方文檔實在是混亂和不利於開發者,因此沒有研究,不知道諸位博友有沒有此實現方式可供你們分享。

 

總結

由於關於此的信息在網絡上實在是零碎,故作此文以整理。因時間倉促,探究深度有限,還望博友分享各自經驗。

PS:如何發現同一網絡內的 EPSON 設備,能夠下載軟件 EpsonNet Config 來查看,非常方便

相關文章
相關標籤/搜索