v3.0
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
intlPHP extension is now required (see docs). This replaces the use ofmbstringandiconv, which are no longer used. - composer is now required to correctly load dependencies, where it was previously optional.
Printer::text()will now throw anExceptionif invalid UTF-8 is supplied. UsePrinter::textRaw()if you are encoding text manually.- Printer-specific sub-classes of
CapabilityProfilehave been removed (eg.StarCapabilityProfile). Use a named profile withCapabilityProfile::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
gdorimagickbeing present in most cases. - A new
MultiplePrintConnectorhas 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 includedunifont-print-buffer.phpexample 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