Search code examples
printingescapingpoint-of-saleepsonthermal-printer

ESC-POS codes for printing image data in page mode


I'm having difficulty printing an image data in page mode. I'm been able to print image data in standard mode as follows:

   data[] = { ESC   , 
              '*'   ,
                0   , // 8-dot single density mode
              width , // nl: image width
                0   } // nh: image width

   for each 8 x image_width block of pixels in a monochrome image
        for each 8 x 1 (vertical) strip of pixels in the block
             append pixel (0 or 1) data to the array, data[]
        write data to COM port

My (unsuccessful) attempt at printing in page mode is a variation of the above and proceeds as follows:

     select page mode by writing the chars, ESC and 'L' to the COM port
     write pixel data as described above
     print by writing the characters ESC and FF

What am I doing wrong? Do I have to specify a print region or something of the sort?

BTW, I'm programming an Epson TM-T88III.


Solution

  • Found the answer. Write ESC J n (print and paper feed) command after writing after each 8 x image_width block of pixels to the COM port.