Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Alternative to Jzebra/QZ Java Raw Print Plugin after NPAPI being dropped on Chrome Browser

We all know that NPAPI will be completely removed from Chrome in a few months.

What would be an alternative to the Jzebra/QZ Java plugin that makes raw printing (sending raw ESC/P commands) to POS printers?

Is there a Chrome API (HTML5 and Javascript) that will be able to replace the communication between the browser and the locally installed POS printers in USB or Ethernet?

like image 423
anestis Avatar asked Nov 21 '14 09:11

anestis


3 Answers

Is there a Chrome API (HTML5 and Javascript) that will be able to replace the communication between the browser and the locally installed POS printers in USB or Ethernet?

Update: A pure HTML5 solution exists for USB devices, but examples are currently hard to find and browser adoption has been slow:

  • WebUSB USB devices only, select browsers.

In regards to HTML5 and JavaScript, since the removal of NPAPI, the solution tends to involve WebSocket to localhost, or cloud-enabled printers.

This HTTP/WebSockets design is used by:

  • Zebra Link-OS and Cloud Connect (for label printing, etc)
  • Epson ePOS-Device (for receipts, display, barcode scanner)
  • Dymo JavaScript Framework 2.0 (for label printing, etc)
  • PrintNode
  • Google Cloud Print (Slated for retirement Dec 2020)
  • Neodynamic TLClient Print (.NET-based for thermal printers)
  • QZ Tray software (the successor to "JZebra/QZ-Print", labels, receipts, anything raw, PDFs, HTML, USB Scales, USB barcode readers, serial devices)

In regards to Point-Of-Sale specific printing, I have been unable to locate a ready solution that meets these needs (pure HTML5 and JavaScript, widely adopted), so either a Desktop-installed middle-ware or a server-side middle-ware is currently the way to achieve what you are describing.

Full disclaimer, we're the authors of QZ Tray.

like image 78
tresf Avatar answered Nov 13 '22 13:11

tresf


You could try PrintNode which has a simple desktop client and json API. It's really quick and has lots of libs: https://github.com/PrintNode/

like image 2
user1912424 Avatar answered Nov 13 '22 13:11

user1912424


I've had good luck with Epson's ePOS-Print JavaScript SDK. It is Epson specific and does require a network interface card that supports ePOS (UB-E04/R04).

like image 1
Stenerson Avatar answered Nov 13 '22 12:11

Stenerson