У меня есть приложение, которое может печатать билеты с помощью Thermal Printers с использованием языка ESC POS. Код, который я использую прямо сейчас:Как распечатать изображение с помощью Esc Pos с Android (Java)
/* <-40char-> */
Socket sock = new Socket(Impresora.getImpresora_Tickets().getIp(), Impresora.getImpresora_Tickets().getPuerto());
OutputStreamWriter osw = new OutputStreamWriter(sock.getOutputStream(), Charset.forName("CP1252"));
PrintWriter oStream = new PrintWriter(osw);
/*Start*/
for(int i = 0; i<Impresora.getImpresora_Tickets().getInic().size(); i++)
oStream.print(Impresora.getImpresora_Tickets().getInic().get(i));
/*Set Font Size*/
for(int i = 0; i<Impresora.getImpresora_Tickets().getLetra4().size(); i++)
oStream.print(Impresora.getImpresora_Tickets().getLetra4().get(i));
oStream.println("HELLO WORLD");
И он отлично работает. Дело в том, что теперь я собираю подпись пользователя с планшетом, и я хочу распечатать его в конце билета. У меня это как растровый объект, но я не знаю, как отправить его на принтер. Кто-нибудь может мне помочь? Благодаря!
EDIT 1:
Я пытаюсь сделать что-то, но я думаю, что я не буду в правильном направлении ...
/**
* Redimensionar imagen
*/
Bitmap firma = Current_Mesa.getT().getFirma_credito();
firma = Bitmap.createScaledBitmap(firma, 255, 64, false);
/**
* Print imagen
*/
ByteArrayOutputStream stream = new ByteArrayOutputStream();
firma.compress(CompressFormat.JPEG, 70, stream);
byte[] firma_bytes = stream.toByteArray();
byte[] SELECT_BIT_IMAGE_MODE = {0x1B, 0x2A, 33};
byte[] SET_LINE_SPACE_24 = {0x1B, 0x33, 24};
byte[] PRINT_AND_FEED_PAPER = new byte[]{0x0A};
for(byte b : SELECT_BIT_IMAGE_MODE)
oStream.print((char)b);
for(byte b : SET_LINE_SPACE_24)
oStream.print((char)b);
for(int i = 0; i < firma_bytes.length; i+=8)
{
for(int plus = 0; plus < 8; plus++)
oStream.print(firma_bytes[i+plus]);
for(byte b : PRINT_AND_FEED_PAPER)
oStream.print((char)b);
}
Вопрос о протоколе ESC POS или о Java конкретно? – immibis
Речь идет о ESC POS, но если я смогу получить образец того, как это сделать на Java, это будет потрясающе. –