Skip to content

chaitanyav/ThermalPrinter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

#Arduino library for mini thermal printer#

Components required to experiment with the mini thermal printer

###References###

Mini Thermal Product datasheet

####Examples####

  • Basic setup

      ThermalPrinter printer(5, 6);
      printer.online();
      printer.reset();
      // do something with printer
    
      printer.offline();
    
  • Printing the PC437, PC850 Characters

      ....
      printer.finePrintSettings();
    
      // select PC437 character code
      printer.characterCodeTable(0);
      printer.writeString("PC437 Code Table:");
      printer.lineFeed();
    
      for(int i = 0; i <= 0xFF; i++) {
        printer.writeCharacter(i);
      }
      printer.lineFeeds(4);
    
      // select  PC850 character code
      printer.characterCodeTable(1);
      printer.writeString("PC850 Code Table:");
      printer.lineFeed();
    
      for(int i = 0; i <= 0xFF; i++) {
        printer.writeCharacter(i);
      }
      printer.lineFeeds(4);
    

    Character Codes

  • Justify text to left, middle and right

      // align left
      printer.alignMode(LEFT);
      printer.writeString("Left");
      printer.lineFeeds(3);
    
      // align middle
      printer.alignMode(MIDDLE);
      printer.writeString("Middle");
      printer.lineFeeds(3);
    
      //align right
      printer.alignMode(RIGHT);
      printer.writeString("Right");
      printer.lineFeeds(3);
    

    Justify Text

  • Reverse Mode

      printer.reverseMode(true);
    
      printer.writeString("*******************************");
      printer.lineFeed();
    
      printer.writeString("This is reverse mode!!! :-) :-)");
      printer.lineFeed();
    
      printer.writeString("*******************************");
      printer.lineFeed();
    
      printer.reverseMode(false);
    

    Reverse Mode

  • Character control commands

      printer.bold(true);
      printer.writeString("This is bold text");
      printer.bold(false);
      printer.lineFeed();
    
      printer.writeString("This is normal text");
      printer.lineFeed();
    
      printer.underline(1);
      printer.writeString("This is underline 1");
      printer.lineFeed();
    
      printer.underline(2);
      printer.writeString("This in underline 2");
      printer.lineFeed();
      printer.underline(0); // no underline
    
      printer.mode(0x10);
      printer.writeString("Double height");
      printer.lineFeed();
    
      printer.mode(0x20);
      printer.writeString("Double width");
      printer.lineFeed();
    
      printer.mode(0x08);
      printer.writeString("Emphasized text");
      printer.lineFeed();
    

    Character control commands

  • Line spacing (by default a line is 32 dots wide)

      printer.writeString("This is line1");
      printer.lineFeed();
      printer.writeString("This is line2");
      printer.lineFeed();
    
      printer.lineSpacing(64);
      printer.writeString("This is line1");
      printer.lineFeed();
      printer.writeString("This is line2");
      printer.lineFeed();
      printer.defaultLineSpacing();
    

    Line spacing

  • Blank characters to the left of first character on the line

   printer.leftBlankChars(1);
   printer.writeCharacter('A');
   printer.lineFeed();

   printer.leftBlankChars(2);
   printer.writeCharacter('B');
   printer.lineFeed();

   printer.leftBlankChars(3);
   printer.writeCharacter('C');
   printer.lineFeed();

   printer.leftBlankChars(4);
   printer.writeCharacter('D');
   printer.lineFeed();

   printer.leftBlankChars(5);
   printer.writeCharacter('E');
   printer.lineFeed();

left blank chars

About

Arduino library for Mini Thermal Printer

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages