public BarcodeReadOptions Options { get; } @property (nonatomic, strong, readonly, nullable) LTBarcodeReadOptions *options public BarcodeReadOptions getOptions() public:property BarcodeReadOptions^ Options {BarcodeReadOptions^ get();}
Options # get (BarcodeReadSymbologyEventArgs)
An BarcodeReadOptions or one of its derived classes that specifies the options being used to read the symbologies.
Options could be the options passed through the read methods or the default options set in BarcodeReader. If Status is BarcodeReadSymbologyStatus.PreRead, then you can modify this object in the event handler if required. The BarcodeReader will use this object to perform the read operation.
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 engineBarcodeEngine engine = new BarcodeEngine();// Get the Barcode reader instanceBarcodeReader reader = engine.Reader;// Load the imageusing (RasterCodecs codecs = new RasterCodecs()){using (RasterImage image = codecs.Load(imageFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1)){// Subscribe to the ReadSymbology eventreader.ReadSymbology += new EventHandler<BarcodeReadSymbologyEventArgs>(reader_ReadSymbology);// Read all barcodes in the imagereader.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 readConsole.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 errorsBarcodeData barcode = e.Data;if (barcode != null){// Found a barcode, show itConsole.WriteLine(" {0} at {1} with data {2}", barcode.Symbology, barcode.Bounds, barcode.Value);}else{Console.WriteLine(" No barcodes found");}}else{// Show the errorConsole.WriteLine("Error: {0}", e.Error.Message);// Tell the reader top stop reading barcodese.Status = BarcodeReadSymbologyStatus.Abort;}}}static class LEAD_VARS{public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";}
import java.io.File;import java.io.IOException;import java.util.*;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import org.junit.*;import org.junit.Test;import org.junit.runner.JUnitCore;import org.junit.runner.Result;import org.junit.runner.notification.Failure;import static org.junit.Assert.*;import leadtools.*;import leadtools.barcode.*;import leadtools.codecs.*;import leadtools.imageprocessing.*;import leadtools.internal.ManualResetEvent;public void barcodeReaderReadSymbologyExample() {final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images";String imageFileName = combine(LEAD_VARS_IMAGES_DIR, "barcode1.tif");// Create a Barcode engineBarcodeEngine engine = new BarcodeEngine();// Get the Barcode reader instanceBarcodeReader reader = engine.getReader();// Load the imageRasterCodecs codecs = new RasterCodecs();RasterImage image = codecs.load(imageFileName, 0, CodecsLoadByteOrder.BGR_OR_GRAY, 1, 1);codecs.save(image, "Result.jpg", RasterImageFormat.JPEG, 0);// Subscribe to the ReadSymbology eventreader.addReadSymbologyListener(readerReadSymbology);// Read all barcodes in the imagereader.readBarcodes(image, LeadRect.getEmpty(), 0, null);reader.removeReadSymbologyListener(readerReadSymbology);assertTrue("Image unsuccessfully saved", (new File("Result.jpg")).exists());System.out.printf("Image loaded and saved to %s%n", new File("Result.jpg"));}BarcodeReadSymbologyListener readerReadSymbology = new BarcodeReadSymbologyListener() {@Overridepublic void onReadSymbologyEvent(BarcodeReadSymbologyEvent arg0) {if (arg0.getOperation() == BarcodeReadSymbologyOperation.PRE_READ) {// Before reading, show the symbologies the engine is going to try to readSystem.out.println("Trying to read the following symbologies:");BarcodeSymbology[] symbologies = arg0.getSymbologies();for (int i = 0; i < symbologies.length; i++) {System.out.print(symbologies[i]);if (i != (symbologies.length - 1)) {System.out.print(", ");System.out.println(arg0.getOptions().getFriendlyName());} else {System.out.println(" ");}}}else if (arg0.getOperation() == BarcodeReadSymbologyOperation.POST_READ) {if (arg0.getError() == null) {// No errorsBarcodeData barcode = arg0.getData();if (barcode != null) {// Found a barcode, show itSystem.out.printf(" %1s at %2s with data %3s%n", barcode.getSymbology(), barcode.getBounds(),barcode.getValue());} else {System.out.println(" No barcodes found");}} else {// Show the errorSystem.out.printf("Error: %1s%n", arg0.getError().getMessage());// Tell the reader top stop reading barcodesarg0.setStatus(BarcodeReadSymbologyStatus.ABORT);}}}};
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
