A PHP QR Code generator and reader with a user-friendly API.
Fixes:
Note: this is the final 4.x release. (i don't know why the workflow run failed this time for v4 and i won't fix it - it didn't fail when it was committed...)
This is a pre-release of the upcoming v5, that may or may not contain bugs and other problems and it is not meant for production.
The most notable features are a rework of the data modes that now allow multi-mode QR Codes as per spec and an included QR Code reader, based on the ZXing library in form of the (updated/streamlined) port khanamiryan/php-qrcode-detector-decoder. Please note that the API, especially of the reader is not finished and may be subject to change. Please refer to the tests for implementation examples for now - the wiki will be updated as soon as the API is finished.
Please use the attached discussion thread for feedback and questions - thanks!
:sparkles: One Million Edition :sparkles:
New features:
QRMatrix::setLogoSpace()
(example), added constant QRMatrix::M_LOGO
(#52)QRMatrix::M_FINDER_DOT
(#52)resource
, GdImage
, Imagick
, FPDF
) from QROutputInterface::dump()
via QROptions::$returnResource
QROptions::$imageBase64
to false
.Fixes & cleanup:
mb_internal_encoding()
as it had no effect here anywaysext-gd
and ext-imagick
when initializing the respective output modules(deleted & re-released as the previous 3.4.0 tag pointed to the 4.x branch. sorry for any inconvenience, i am dumb.)
:sparkles: One Million Edition :sparkles:
New features:
QRMatrix::setLogoSpace()
(example), added constant QRMatrix::M_LOGO
(#52)QRMatrix::M_FINDER_DOT
(#52)resource
, GdImage
, Imagick
, FPDF
) from QROutputInterface::dump()
via QROptions::$returnResource
Fixes & cleanup:
mb_internal_encoding()
as it had no effect here anywaysext-gd
and ext-imagick
when initializing the respective output modulesphpunit.xml
to support the new formatext-gd
and ext-json
optional (removed from composer.json
). Please note that ext-gd
is still necessary for the default output method that is png
.$x
and $y
were swapped) - see #45 for more information$x
and $y
were swapped) - see #45 for more information$x
and $y
were swapped) - see #45 for more information