Skip to content

v3.0

Compare
Choose a tag to compare
@mike42 mike42 released this 13 Oct 06:29
· 17 commits to master since this release
dcb569a

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