Awesome
DelphiZXingQRCodeEx
DelphiZXingQRCodeEx is a Delphi port of the QR Code functionality from ZXing, an open source barcode image processing library.
The code was initially ported to Delphi by Senior Debenu Developer, Kevin Newman (project DelphiZXingQRCode, see links below). Then it was changed by Michael Demidov. The changes are listed in CHANGELOG.md.
The most fundamental differences are:
- Error correction level has been fixed.
- Support for programmer-defined charsets. As an example, I implemented Win-1251 Russian charset and URL encoding (when non-Latin characters are represented as %-codes).
- Exception handling has been added. There is no more Access Violation when input string is too long.
- New QRGraphics.pas unit has been added that contains several functions to draw the QR Code on a given canvas (TCanvas) and to generate either a bitmap or a metafile.
- Still compatible with older versions of Delphi (at least Delphi 7). Compatible with Lazarus (1.2.6, for Windows), see CHANGELOG.md (section 5).
The port retains the original Apache License (v2.0).
Links
- Original DelphiZXingQRCode GitHub
- ZXing GitHub
- Michael Demidov's blog (in Russian only, sorry)
Software Requirements
Delphi 7 or newer (I tested with Delphi 7 and XE3).
Getting Started
A sample Delphi project is provided in the TestApp folder to demonstrate how to use DelphiZXingQRCode.