ReadSymbology Event (original) (raw)

Summary

Occurs for every barcode symbology read.

Syntax

C#

Objective-C

C++/CLI

Java

Python

@property (nonatomic, weak, nullable) id<LTReadSymbologyDelegate> delegate 

public void addReadSymbologyListener(BarcodeReadSymbologyListener listener) public void removeReadSymbologyListener(BarcodeReadSymbologyListener listener)

public: event EventHandler<BarcodeReadSymbologyEventArgs^>^ ReadSymbology

def ReadSymbology(sender,e): # sender: BarcodeReader e: BarcodeReadSymbologyEventArgs 

Event Data

The event handler receives an argument of type BarcodeReadSymbologyEventArgs containing data related to this event. The following BarcodeReadSymbologyEventArgs properties provide information specific to this event.

Property Description
Data Gets the barcode data found.

Example

This example shows how to use ReadSymbology to get the current status of barcode reading.

using Leadtools; using Leadtools.Codecs; using Leadtools.Barcode; using Leadtools.ImageProcessing; public void BarcodeReader_ReadSymbologyExample() { string imageFileName = Path.Combine(LEAD_VARS.ImagesDir, "Barcode1.tif"); // Create a Barcode engine BarcodeEngine engine = new BarcodeEngine(); // Get the Barcode reader instance BarcodeReader reader = engine.Reader; // Load the image using (RasterCodecs codecs = new RasterCodecs()) { using (RasterImage image = codecs.Load(imageFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1)) { // Subscribe to the ReadSymbology event reader.ReadSymbology += new EventHandler<BarcodeReadSymbologyEventArgs>(reader_ReadSymbology); // Read all barcodes in the image reader.ReadBarcodes(image, LeadRect.Empty, 0, null); reader.ReadSymbology -= new EventHandler<BarcodeReadSymbologyEventArgs>(reader_ReadSymbology); } } } private void reader_ReadSymbology(object sender, BarcodeReadSymbologyEventArgs e) { if (e.Operation == BarcodeReadSymbologyOperation.PreRead) { // Before reading, show the symbologies the engine is going to try to read Console.WriteLine("Trying to read the following symbologies:"); BarcodeSymbology[] symbologies = e.GetSymbologies(); for (int i = 0; i < symbologies.Length; i++) { Console.Write(symbologies[i]); if (i != (symbologies.Length - 1)) { Console.Write(", "); Console.WriteLine(e.Options.FriendlyName); } else { Console.WriteLine(); } } } else if (e.Operation == BarcodeReadSymbologyOperation.PostRead) { if (e.Error == null) { // No errors BarcodeData barcode = e.Data; if (barcode != null) { // Found a barcode, show it Console.WriteLine(" {0} at {1} with data {2}", barcode.Symbology, barcode.Bounds, barcode.Value); } else { Console.WriteLine(" No barcodes found"); } } else { // Show the error Console.WriteLine("Error: {0}", e.Error.Message); // Tell the reader top stop reading barcodes e.Status = BarcodeReadSymbologyStatus.Abort; } } } static class LEAD_VARS { public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images"; }