Optical Barcode Recognition

Optical Barcode Recognition demo example
Delphi and C++ Builder optical barcode recognition component.
  • uses ZBar bar code reader library
  • supports EAN-13/UPC-A, EAN-8, UPC-E, Code 39, Code 93, Code 128, Codabar, PDF417, GS1 DataBar, GS1 DataBar Expanded, Interleaved 2 of 5 and QR Code barcodes
  • supports Windows 32 and Windows 64
  • available for Delphi/C++ Builder 5 - 10.3 and Lazarus 1.8.4
  • source code included in registered version
  • royalty free distribution in applications

Download and order

Order OBR component $60,- USD (license for one developer)
Order OBR multilicense $180,- USD (license for all developers in company)
Order OBR year upgrades $30,- USD (registered users only)
Order OBR year upgrades multilicense $90,- USD (registered multilicense users only)


How can I scan UPC/EAN barcodes with 5 digit extension?
Add this line before scaning barcode:
Obr.Configure(syEan5, saNone, coEnableSymbology, 1);

Why are some QR Codes containing diacritic incorrectly decoded?
This problem is caused by incorrectly created QR Codes that use QR Code Kanji (Shift JIS X 0208) encoding. Use this code for decoding:
function DecodeQRCode(Data: TBytes): string;
  Utf8: string;
  ShiftJIS: TBytes;
  Utf8 := TEncoding.UTF8.GetString(Data);
  ShiftJIS := TEncoding.GetEncoding(932 {Shift JIS }).GetBytes(Utf8);
  Result := TEncoding.ANSI.GetString(ShiftJIS);

Related links