java 中的热敏打印机命令
Command for thermal printer in java
我有一组用于我的热敏打印机的命令:这是一个示例
ASCII ESC a n
Decimal 27 97 n
Hexadecimal 1B 61 n
Description Default is 0
0 ≤ m ≤ 2 or 48 ≤ m ≤ 50
Align left: n=0,48
Align middle: n=1,49
Align right: n=2,50
我想知道这个命令怎么用??我知道我需要向打印机写入这样的命令:
byte [] cmd = new byte[3];
cmd[0]=??
cmd[1]???
mmOutputStream.write(cmd);//out put stream of soccket connected to
//printer by bluetooth
更多说明:我想向我的打印机添加命令,使文本显示在中心
这里是十六进制和普通字符代码示例序列,您可以将其发送到打印机,以便文本左对齐、居中和右对齐。转义序列简单地嵌入到常规文本中。
1b 40
1b 61 00 This is left-aligned 0a
1b 61 01 This is centered 0a
1b 61 02 This is right-aligned 0a
初始 ESC @ 重置格式。
我不知道 48、49、50 会产生什么,但类似的实验应该可以告诉你。
要编写转义序列,请将其存储在字节数组中并像编写常规文本一样编写:
byte[] center = new byte[]{ 0x1b, 0x61, 0x01 };
outputStream.write( center );
outputStream.write( "This is centered\n".getBytes() );
并且您可以 "wrap" OutputStream 周围的 PrintWriter,这使一切变得简单:
// next stmt according to OP
BufferedWriter bw =new OutputStreamWriter( otputStream, "8859_6" );
PrintWriter pw = new PrintWriter( bw, true );
String center = "\u001b\u0061\u0001";
pw.println( center + "This is centered" );
我有一组用于我的热敏打印机的命令:这是一个示例
ASCII ESC a n
Decimal 27 97 n
Hexadecimal 1B 61 n
Description Default is 0
0 ≤ m ≤ 2 or 48 ≤ m ≤ 50
Align left: n=0,48
Align middle: n=1,49
Align right: n=2,50
我想知道这个命令怎么用??我知道我需要向打印机写入这样的命令:
byte [] cmd = new byte[3];
cmd[0]=??
cmd[1]???
mmOutputStream.write(cmd);//out put stream of soccket connected to
//printer by bluetooth
更多说明:我想向我的打印机添加命令,使文本显示在中心
这里是十六进制和普通字符代码示例序列,您可以将其发送到打印机,以便文本左对齐、居中和右对齐。转义序列简单地嵌入到常规文本中。
1b 40
1b 61 00 This is left-aligned 0a
1b 61 01 This is centered 0a
1b 61 02 This is right-aligned 0a
初始 ESC @ 重置格式。
我不知道 48、49、50 会产生什么,但类似的实验应该可以告诉你。
要编写转义序列,请将其存储在字节数组中并像编写常规文本一样编写:
byte[] center = new byte[]{ 0x1b, 0x61, 0x01 };
outputStream.write( center );
outputStream.write( "This is centered\n".getBytes() );
并且您可以 "wrap" OutputStream 周围的 PrintWriter,这使一切变得简单:
// next stmt according to OP
BufferedWriter bw =new OutputStreamWriter( otputStream, "8859_6" );
PrintWriter pw = new PrintWriter( bw, true );
String center = "\u001b\u0061\u0001";
pw.println( center + "This is centered" );