Closed palanganero closed 3 years ago
Hi @palanganero, is you logo one image (jpeg or png ) file?
yes
yeap, take a look on https://github.com/anastaciocintra/escpos-coffee/wiki/Images
hello, i have this code for printing a logo, but i get an error when compile in that line: logoImage = ImageIO.read(Objects.requireNonNull(ImprimirLogoTicket.class.getClassLoader() .getResource("images.jpeg")));
this is the code:
` public static void main(String[] args) throws IOException {
ImageHelper helper = new ImageHelper();
BufferedImage logoImage;
//i have a error in requireNonNull on the next line
logoImage = ImageIO.read(Objects.requireNonNull(ImprimirLogoTicket.class.getClassLoader()
.getResource("images.jpeg")));
Bitonal algorithm = new BitonalThreshold();
RasterBitImageWrapper imageWrapper = new RasterBitImageWrapper();
PrintService printService = PrinterOutputStream.getPrintServiceByName("XP-58-2");
PrinterOutputStream printerOutputStream = new PrinterOutputStream(printService);
EscPos escpos = new EscPos(printerOutputStream);
helper.write(escpos, new CoffeeImageImpl(logoImage),imageWrapper,algorithm);
}`
i tryed with this other code but sends me an error: buffered image cannot be converted to cofeeimage:
` File file = new File("images.jpeg");
//BufferedImage imageBufferedImage = ImageIO.read(file);
CoffeeImage imageBufferedImage = ImageIO.read(file);
// this wrapper uses esc/pos sequence: "GS 'v' '0'"
RasterBitImageWrapper imageWrapper = new RasterBitImageWrapper();
PrintService printService = PrinterOutputStream.getPrintServiceByName("XP-58-2");
EscPos escpos = new EscPos(new PrinterOutputStream(printService));
Bitonal algorithm = new BitonalThreshold();
EscPosImage escposImage = new EscPosImage(imageBufferedImage, algorithm);
escpos.write(imageWrapper, escposImage);`
Hi @palanganero try something like this:
public void printLogo() throws IOException {
PrintService printService = PrinterOutputStream.getPrintServiceByName("TM-T20");
EscPos escpos = new EscPos(new PrinterOutputStream(printService));
BufferedImage bufferedImage = ImageIO.read(new File("/home/marco/desenv/dog.png"));
CoffeeImage coffeeImage = new CoffeeImageImpl(bufferedImage);
Bitonal algorithm = new BitonalOrderedDither();
GraphicsImageWrapper imageWrapper = new GraphicsImageWrapper();
imageWrapper.setJustification(EscPosConst.Justification.Center);
EscPosImage escposImage = new EscPosImage(coffeeImage, algorithm);
escpos.writeLF("Printing one image");
escpos.write(imageWrapper, escposImage);
escpos.feed(3).cut(EscPos.CutMode.FULL);
escpos.close();
}
it prints strange characters. I tryed to print the dog photo you have in the examples and it prints strange characters. see: https://postimg.cc/rdXJXG33
Hi @palanganero you can find some explanation about the ImageWrapperInterface implementation at https://github.com/anastaciocintra/escpos-coffee/wiki/Images
and test with printLogo / printLogo2 and printLogo3
you can download the dog.png ...
see you!
//GraphicsImageWrapper
public void printLogo() throws IOException {
PrintService printService = PrinterOutputStream.getPrintServiceByName("TM-T20");
EscPos escpos = new EscPos(new PrinterOutputStream(printService));
// BufferedImage bufferedImage = ImageIO.read(new File("/home/marco/desenv/dog.png"));
BufferedImage bufferedImage = ImageIO.read(new File("C:\\Users\\macin\\desenv\\github\\dog.png"));
CoffeeImage coffeeImage = new CoffeeImageImpl(bufferedImage);
Bitonal algorithm = new BitonalOrderedDither();
GraphicsImageWrapper imageWrapper = new GraphicsImageWrapper();
imageWrapper.setJustification(EscPosConst.Justification.Center);
EscPosImage escposImage = new EscPosImage(coffeeImage, algorithm);
escpos.writeLF("GraphicsImageWrapper");
escpos.writeLF("Printing one image");
escpos.write(imageWrapper, escposImage);
escpos.feed(3).cut(EscPos.CutMode.FULL);
escpos.close();
}
// RasterBitImageWrapper
public void printLogo2() throws IOException {
PrintService printService = PrinterOutputStream.getPrintServiceByName("TM-T20");
EscPos escpos = new EscPos(new PrinterOutputStream(printService));
// BufferedImage bufferedImage = ImageIO.read(new File("/home/marco/desenv/dog.png"));
BufferedImage bufferedImage = ImageIO.read(new File("C:\\Users\\macin\\desenv\\github\\dog.png"));
CoffeeImage coffeeImage = new CoffeeImageImpl(bufferedImage);
Bitonal algorithm = new BitonalOrderedDither();
RasterBitImageWrapper imageWrapper = new RasterBitImageWrapper();
imageWrapper.setJustification(EscPosConst.Justification.Center);
EscPosImage escposImage = new EscPosImage(coffeeImage, algorithm);
escpos.writeLF("RasterBitImageWrapper");
escpos.writeLF("Printing one image");
escpos.write(imageWrapper, escposImage);
escpos.feed(3).cut(EscPos.CutMode.FULL);
escpos.close();
}
// BitImageWrapper
public void printLogo3() throws IOException {
PrintService printService = PrinterOutputStream.getPrintServiceByName("TM-T20");
EscPos escpos = new EscPos(new PrinterOutputStream(printService));
// BufferedImage bufferedImage = ImageIO.read(new File("/home/marco/desenv/dog.png"));
BufferedImage bufferedImage = ImageIO.read(new File("C:\\Users\\macin\\desenv\\github\\dog.png"));
CoffeeImage coffeeImage = new CoffeeImageImpl(bufferedImage);
Bitonal algorithm = new BitonalOrderedDither();
BitImageWrapper imageWrapper = new BitImageWrapper();;
imageWrapper.setJustification(EscPosConst.Justification.Center);
EscPosImage escposImage = new EscPosImage(coffeeImage, algorithm);
escpos.writeLF("BitImageWrapper");
escpos.writeLF("Printing one image");
escpos.write(imageWrapper, escposImage);
escpos.feed(3).cut(EscPos.CutMode.FULL);
escpos.close();
}
with "RasterBitImageWrapper" prints right.Thank you!
Hello,
I am trying to print png image using this code
BufferedImage bufferedImage = ImageIO.read(new File(""));
Bitonal algorithm = new BitonalOrderedDither();
RasterBitImageWrapper imageWrapper = new RasterBitImageWrapper();
imageWrapper.setJustification(EscPosConst.Justification.Center);
EscPosImage escposImage = new EscPosImage(new CoffeeImageImpl(bufferedImage), algorithm);
but BufferedImage and ImageIO shown with red color as not recognized at android what should I do, and how to print bitmap image
Thanks in advance
@Ahmedmedhat187 Take a look at https://github.com/anastaciocintra/escpos-coffee-samples/tree/master/miscellaneous/AndroidImage
how can i print a logo?