←Select platform

GetSymbologies Method

Summary
Gets the current symbologies being searched for or that have been read.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public BarcodeSymbology[] GetSymbologies() 
@property (nonatomic, assign, readonly, nullable) LTBarcodeSymbology *symbologies 
public BarcodeSymbology[] getSymbologies() 
public: 
array<BarcodeSymbology>^ GetSymbologies();  
def GetSymbologies(self): 

Return Value

An array of BarcodeSymbology that specifies the current symbologies being searched for or that have been read.

Remarks

LEADTOOLS barcode reading is designed for speed and multiple barcode symbologies and can be read (or searched for) in one operation as these barcodes share similar characteristics. Therefore, the symbologies being read are stored in a BarcodeSymbology array and can be obtain with this method.

Example
C#
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"; 
} 
Requirements

Target Platforms

Help Version 22.0.2023.5.9
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Barcode Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.