POS58 票據熱敏印表機,怎麼用ESC/POS命令控制列印文字大小?

來源:互聯網
上載者:User

轉貼地址:http://www.cnblogs.com/Tmouse/archive/2010/04/14/1711490.html

 

 

使用的是POS58票據熱敏印表機,怎麼控制文字大小?
我知道ESC/POS指令,可不會用。
ASCII :ESC ! n

進位 :27 33 n
十六進位:1B 21 n

在C#裡用十進位,是不是(char)(27)+(char)(33)+
(char)(n)就可以把文字放大一倍列印了?
主要是想放大文字列印。n不知道取多少? 是48嗎?

比如要將"中國"這個字串放大一倍列印,具體怎麼寫的?

 

____________________________________________________

經過多次嘗試,終於搞懂了.

先用字元的形式發送命令:

send = "" + (char)(27) + (char)(64) + (char)(27) + (char)(33) +
(char)(48);

 

            for (int i = 0; i < send.Length; i++)
            {
               
buf[i] = (byte)send[i];
            }

            fs.Write(buf, 0, buf.Length);

 解釋:  (char)(27) + (char)(64)是將印表機初始化, (char)(27) + (char)(33) +
(char)(48); 是設定列印字元格式設定命令,最後的48可以為0,16,32,48

接著直接列印輸出:

printLPT.PrintData("中國" );

 

歡迎有同類問題的朋友指教!

*************************************************************************************

更正:其實可以把控制命令字元和輸出字元寫在一起.不管用什麼方式,如果是多條資料就要在一個輸出程式裡同時輸出,而不要寫成函數的形式來調用,那
樣是不會成功的.這是我經過一天一夜研究出來的結果,網上也能找到ESC/POS列印指令使用的程式,人家就是寫在一起的,但沒有控制字元大小的例子.我
自作聰明的把它改成一個函數,費了一天一夜的功夫才發現走了彎路.不過也值得,終於弄懂了ESC/POS指令怎麼用了.

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.