AS-289R2 Thermal Printer shield control library

Dependents:   AS-289R2_Hello-World AS-289R2_Hello-World-mbed-OS hybrid_image_as289r2 microbit_AS-289R2 ... more

Revision:
4:a2e0373a9cd1
Parent:
2:ce25d0949cbd
Child:
7:f9b9162c7e9d
--- a/AS289R2.cpp	Mon Sep 19 13:52:42 2016 +0000
+++ b/AS289R2.cpp	Fri Feb 03 09:28:48 2017 +0000
@@ -1,5 +1,5 @@
 /* AS289R2 Library, for a Thermal Printer Shield AS-289R2
- * Copyright (c) 2016, Toyomasa Watarai 
+ * Copyright (c) 2016, Toyomasa Watarai
  *
  * Permission is hereby granted, free of charge, to any person obtaining a copy
  * of this software and associated documentation files (the "Software"), to deal
@@ -153,6 +153,111 @@
     }
 }
 
+void AS289R2::setLineSpaceing(uint32_t space)
+{
+    _serial.putc(0x1B);
+    _serial.putc(0x33);
+    _serial.putc(space);
+}
+
+void AS289R2::defaultLineSpaceing()
+{
+    _serial.printf("\x1B\x33\x04");
+}
+
+void AS289R2::setPrintDirection(uint32_t direction)
+{
+    _serial.putc(0x1B);
+    _serial.putc(0x49);
+    _serial.putc(direction);
+}
+
+void AS289R2::putPaperFeed(uint32_t space)
+{
+    _serial.putc(0x1B);
+    _serial.putc(0x4A);
+    _serial.putc(space);
+}
+
+void AS289R2::setInterCharacterSpace(uint32_t space)
+{
+    _serial.putc(0x1B);
+    _serial.putc(0x20);
+    _serial.putc(space);
+}
+
+void AS289R2::defaultInterCharacterSpace()
+{
+    _serial.printf("\x1B\x20\x01");
+}
+
+void AS289R2::putPrintPosition(uint32_t position)
+{
+    _serial.putc(0x1B);
+    _serial.putc(0x6c);
+    _serial.putc(position);
+}
+
+void AS289R2::setScript(uint32_t script)
+{
+    _serial.putc(0x1B);
+    _serial.putc(0x73);
+    _serial.putc(script);
+}
+
+void AS289R2::clearScript()
+{
+    _serial.printf("\x1B\x73\x30");
+}
+
+void AS289R2::setQuadrupleSize()
+{
+    _serial.printf("\x1C\x57\x31");
+}
+
+void AS289R2::clearQuadrupleSize()
+{
+    _serial.printf("\x1C\x57\x30");
+}
+
+void AS289R2::setEnlargement(uint32_t width, uint32_t height)
+{
+    _serial.putc(0x1C);
+    _serial.putc(0x65);
+    _serial.putc(width);
+    _serial.putc(height);
+}
+
+void AS289R2::clearEnlargement()
+{
+    _serial.printf("\x1C\x65\x31\x31");
+}
+
+void AS289R2::setBarCodeHeight(uint32_t height)
+{
+    _serial.putc(0x1D);
+    _serial.putc(0x68);
+    _serial.putc(height);
+}
+
+void AS289R2::defaultBarCodeHeight()
+{
+    _serial.printf("\x1D\x68\x50");
+}
+
+void AS289R2::setBarCodeBarSize(uint32_t narrowbar, uint32_t widebar)
+{
+    _serial.putc(0x1D);
+    _serial.putc(0x77);
+    _serial.putc(narrowbar);
+    _serial.putc(widebar);
+}
+
+void AS289R2::defaultBarCodeBarSize()
+{
+    _serial.printf("\x1D\x77\x02\x05");
+}
+
 int AS289R2::_putc(int value)
 {
     _serial.putc(value);