Escpos Php Versions Save

PHP library for printing to ESC/POS-compatible thermal and impact printers

v4.0

1 year ago

This change updates the supported PHP versions, and contains some breaking changes to improve compatibility with newer PHP installs.

Breaking changes to users who are upgrading:

  • Support for PHP 7.0. 7.1 and 7.2 has been removed. PHP 7.3 or higher is required from this version.
  • Source files now use declare(strict_types=1), which will cause errors for callers which are not using the correct scalar types.

Bug fixes:

  • Using the GD library to load images would result in an error on PHP 8. This was due to a change to the GD interface from PHP 8.0.
  • The example scripts now refer to vendor/autoload.php, so they will work if this repository is checked out and used standalone.
  • PHPUnit has been updated to version 9.0.

v3.0

4 years ago

Breaking changes for developers who are upgrading:

  • Support for PHP 5.x and HHVM has been removed. PHP 7.0 or higher is required from this version.
  • The intl PHP extension is now required (see docs). This replaces the use of mbstring and iconv, which are no longer used.
  • composer is now required to correctly load dependencies, where it was previously optional.
  • Printer::text() will now throw an Exception if invalid UTF-8 is supplied. Use Printer::textRaw() if you are encoding text manually.
  • Printer-specific sub-classes of CapabilityProfile have been removed (eg. StarCapabilityProfile). Use a named profile with CapabilityProfile::load() instead.
  • The API now uses scalar and return type hinting in some places, which makes it more strict than it was previously.

New features:

  • Inclusion of new printer profiles from escpos-printer-db.
  • gfx-php has been added as a dependency, which allows image processing to work without gd or imagick being present in most cases.
  • A new MultiplePrintConnector has been added, which allows developers to route identical print data to multiple printers simultaneously.

Experimental features:

  • A new UnifontPrintBuffer, which uses glyphs from a GNU Unifont hex file as an alternative to the on-board printer fonts. See the included unifont-print-buffer.php example for usage.

Bug fixes:

  • Added checks where temporary files are created, to give clearer error messages on setups where the temp directory is misconfigured, see #362

v2.2

4 years ago

New features:

  • A RawBT connector and example

Newly tested printers:

  • Bixolon SRP-350Plus
  • CHD TH-305N
  • Elgin i9
  • Everycom EC-58
  • Gainscha GP-2120TF
  • SAM4S GIANT-100DB
  • SEYPOS PRP-96
  • Solux SX-TP-88300
  • SNBC BTP-R880NPIII
  • TVS RP45 Shoppe
  • Zjiang ZJ-8250

v2.1

5 years ago

New features:

  • Upside-down printing is now implemented #615
  • Include updates from escpos-printer-db

Bug and code fixes:

  • Modify validation code in WindowsPrintConnector for PHP 7.3 compatibility
  • Add to type hints where possible, replace old usages in examples, and correctly label the namespace for some exceptions

Newly tested printers:

  • OKI RT322
  • ithaca ITherm 280
  • Rongta RP80USE
  • Sewoo SLK-TS400
  • Approx APPPOS80AM
  • QPOS Q58M
  • HOIN HOP-H58
  • Xeumior SM-8330
  • Birch PRP-085III
  • 3nStar RPT-008
  • POSLIGNE ODP200H-III-G

v2.0.2

5 years ago

Bug and code fixes:

  • FilePrintConnector throwing warnings if it was closed twice. #595
  • Typo in Printer.php, fixed by @wavoe

New printers tested:

  • Bematech LR2000E
  • DR-MP200
  • Partner Tech RP320
  • Xprinter XP-365B
  • Zjiang ZJ-8220

v2.0.1

6 years ago

This point release includes an updated copy of receipt-print-hq/escpos-printer-db, so that character encoding improvements are accessible on these printers:

  • TM-T88IV
  • TM-T88IV-SA

v2.0

6 years ago

You must have PHP 5.4 or HHVM 3.21 or higher to upgrade to this version.

New features:

  • UriPrintConnector helper for initializing connectors based on a URI. Contributed by @evsar3 #314

Bug fixes:

  • WindowsPrintConnector on Linux will now use SMB2 due to SMB3 compatibility issues affecting printing to newer Windows versions. Contributed by @1dal #488

Tested on new devices:

  • Senor TP-100
  • 3nStrat POS-08
  • Black Copper BC-85AC
  • Nyear NP100
  • Star BSC10
  • Sicar POS-80
  • Bematech-4200-TH
  • Xprinter XP-90, XP-58 Series
  • Dapper-Geyi Q583P
  • Epson EU-T332C

v1.6

6 years ago

New features:

  • Release paper function for Epson TM-U295 #417
  • Allow + character in passwords for Windows shared printers #392

Tested on new devices:

  • Citizen CT-S310II
  • Epson TM-T20II
  • Epson TM-T81
  • Epson TM-T88II
  • Epson TM-U590 and TM-U590P
  • Epson TM-U295
  • Equal (EQ-IT-001) POS-58
  • Metapace T-25
  • Nexa PX700
  • Orient BTP-R580
  • Star TSP100III FuturePRNT
  • XPrinter XP-Q20011
  • Xprinter XP-80C

This is expected to be the final release in the 1.x series. Newer versions will drop support for some end-of-life PHP versions.

v1.5.2

6 years ago

This release includes the addition of a timeout parameter to NetworkPrintConnector.

Tested on new devices:

  • Rongta RP58-U

v1.5.1

7 years ago

Changes are limited to build and documentation fixes.

Bug fixes:

  • Dependency introduced in 1.5 broke installation for some users #300
  • Requirement for imagick to be installed for some features was not documented #262

Tested on new devices:

  • gprinter GP-U80300I
  • gprinter GP-U80160I
  • SPRT SP-POS88V
  • Xprinter F-900