首页 文章

如何使用蓝牙热敏打印机打印发票收据

提问于
浏览
15

我必须使用热敏打印机打印发票收据 . 我用Zjiang Thermal printer打印收据 . 他们还提供了manual&demo项目 . 在演示项目中,他们使用libray "btsdk.jar"来实现连接和打印 .

我已成功 Build 打印机和Android设备之间的连接 . 但没有 text alignment (center, left, right) & cell width, height. 的指导方针

have try it . 它只通过更改格式2变量来更改文本高度 .

How I print invoice by bluetooth printer.

please also explain this section-

byte[] cmd = new byte[3];
 cmd[0] = 0x1b;
 cmd[1] = 0x21;
 cmd[2] |= 0x10;

cmd 2 - 用于更改字体高度使用cmd [0]&cmd 1

code to send Printing message to bluetooth Printer In Demo Project

String msg = "";
 byte[] cmd = new byte[3];
 cmd[0] = 0x1b;
 cmd[1] = 0x21;
 cmd[2] |= 0x10;
 mService.write(cmd);           
 mService.sendMessage("Congratulations!\n", "GBK"); 
 cmd[2] &= 0xEF;
 mService.write(cmd);          
 msg = "  You have sucessfully created communications between your device and our bluetooth printer.\n\n"
      +"  the company is a high-tech enterprise which specializes" +
        " in R&D,manufacturing,marketing of thermal printers and barcode scanners.\n\n";
 mService.sendMessage(msg,"GBK");

Print Info-

parameters:support to download the Logo trademark
       FontA:12*24 dots,1.5(W)*3.0(H) mm
       FontB:9*17 dots, 1.1(W)*2.1(H) mm
       Simplified/Traditional: 24*24 dots, 3.0(W)*3.0(H)
       Line spacing: 3.75mm (Default)
       Barcode Types:-
       1D Barcode- UPC-A/UPC-E, JAN13(EAN13), JAN8(EAN8), CODE39/ITF, CODABAR,CODE93
       2d Barcode- QR CODE

Invoice Receipt

enter image description here

2 回答

  • 5

    我在互联网上找到了以下图像,用于文本对齐 . 希望能帮助到你

    enter image description here

  • 0

    你可以用它

    void printLine(String txt, char type){
        byte[] format = { 27, 33, 0 };
        byte[] arrayOfByte1 = { 27, 33, 0 };
    
        if (type == 'b') {
            format[2] = ((byte) (0x8 | arrayOfByte1[2])); //BOLD
        }
        if (type == 'h') {
            format[2] = ((byte) (0x10 | arrayOfByte1[2])); //HEIGHT
        }
        if (type == 'w') {
            format[2] = ((byte) (0x20 | arrayOfByte1[2])); //WIDTH
        }
        if (type == 'u') {
            format[2] = ((byte) (0x80 | arrayOfByte1[2])); //UNDERLINE
        }
        if (type == 's') {
            format[2] = ((byte) (0x1 | arrayOfByte1[2])); //SMALL
        }
        mService.write(format);
        mService.sendMessage(txt,"GBK");
    }
    

    感谢Leonardo Sapuy和他原来的q / a Format text in bluetooth printer,感谢Murtaza Khursheed Hussain送我去

相关问题