# Processing and thermal printer

**URL:** <https://discourse.processing.org/t/processing-and-thermal-printer/3933>\
**Category:** Electronics (Arduino, etc.)\
**Created:** [September 28, 2018, 2:08pm UTC](https://discourse.processing.org/t/processing-and-thermal-printer/3933 "2018-09-28T14:08:46Z")\
**Posts on this page:** 1\
**Showing post:** 11

<div class="post-metadata">

**Author:** ![BillV](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/billv/32/1007_2.png) [@BillV](https://discourse.processing.org/u/BillV)\
**Post date:** [October 8, 2018, 10:07pm UTC](https://discourse.processing.org/t/processing-and-thermal-printer/3933/11 "2018-10-08T22:07:18Z")

</div>

If the only thing you will be printing is text to the receipt printer here is one possible solution. First, save the text you want to print to a text file (i.e. Myfile.txt). Then, use the launch command to open Windows Notepad.exe with the ‘/p’ option to automatically print the text file. See the code example below:

```auto
//Receipt Printer Test program
import processing.serial.*; //Use the serial library
import static javax.swing.JOptionPane.*; //Use the option pane dialog box library

String TS_file="Timeslip.txt"; //String variable for the Time Slip text file name
String Str1 = ""; //Working string variable
String Str2 = ""; //Working string variable
String Prt_Cmd = ""; //String for holding print command
String File_Path = "C:/Users/Bill/Processing/6-Sandbox/receipt_printer_test/Timeslip.txt";
PrintWriter TS_output; //Create an output variable for writing to the Timeslip.txt file

void setup() {
  size(200,200);
  background(255);
  fill(0);
  text("Printer Test",90,100);
  Prt_Cmd = "notepad.exe /p " + File_Path; //Build the time slip print command string
}

void draw() {
  Str1 = "PRINT REQUEST";
  Str2 = "Do you wish to print the timeslip text file?";
  int input = showConfirmDialog(null, Str2, Str1, YES_NO_OPTION); //Prompt: 0=yes, 1=no
  if (input == 0) { //Did user respond with "YES"?
    Create_Timeslip(); //Call subroutine to create timeslip text file
    println("Timeslip file created"); //Optional debug line to let you know file was created
    delay(100);
    launch(Prt_Cmd); //Launch Windows command to print time slip
  }
  else {
    exit(); //Exit program if "NO" was selected
  }
  delay (100);
}

void Create_Timeslip() { //Create the Time Slip text file
  TS_output = createWriter(TS_file); //Open Time Slip text file in the sketch directory
  TS_output.println(" DFW Winternationals");
  TS_output.println(" Snowmobile Drag Racing");
  TS_output.println("=================================");
  TS_output.println(" Date: 09/02/2018");
  TS_output.println(" Race# 04");
  TS_output.println(" -Lane 1- -Lane 2-");
  TS_output.println(" 00.276 React Time 00.271");
  TS_output.println(" 03.781 60 Ft Time 03.632");
  TS_output.println(" 27.641 Trap Speed MPH 36.320");
  TS_output.println(" 07.934 Elapsed Time 07.725");
  TS_output.println(" - - - Status WINNER");
  TS_output.println("=================================");
  TS_output.println(" Thanks for racing with us");
  TS_output.println(" Bill V's Timers");
  TS_output.flush(); //Writes any remaining data to the file
  TS_output.close(); //Close the file
}

```

---

_[View the full topic](https://discourse.processing.org/t/processing-and-thermal-printer/3933)._
