public int Granularity { get; set; } @property (nonatomic, assign) NSInteger granularity; public int getGranularity()public void setGranularity(int value)
Granularity # get and set (PostNetPlanetBarcodeReadOptions)
An Int32 that indicates the number of scanned lines per column to skip when reading a barcode. Must be a value greater than or equal to 1. The default value is 9.
A value of 9 means that each tenth line will be scanned when looking for a barcode. Scanning every line will slow the search process while skipping too many lines may skip over the barcode.
using Leadtools;using Leadtools.Codecs;using Leadtools.Barcode;using Leadtools.ImageProcessing;public void PostNetPlanetBarcode_Example(){string imageFileName = Path.Combine(LEAD_VARS.ImagesDir, "MyPostNetPlanetBarcodes.tif");BarcodeEngine engine = new BarcodeEngine();// Create the image to write the barcodes toint resolution = 300;using (RasterImage image = RasterImage.Create((int)(8.5 * resolution), (int)(11.0 * resolution), 1, resolution, RasterColor.FromKnownColor(RasterKnownColor.White))){// Write a POSTNET and a PLANET barcodesWriteBarcode(engine.Writer, image, BarcodeSymbology.PostNet, "123456789", new LeadRect(10, 100, 400, 200));WriteBarcode(engine.Writer, image, BarcodeSymbology.Planet, "12345678901", new LeadRect(10, 500, 400, 200));// Save the imageusing (RasterCodecs codecs = new RasterCodecs()){codecs.Save(image, imageFileName, RasterImageFormat.CcittGroup4, 1);}}// Now read the barcodes againusing (RasterCodecs codecs = new RasterCodecs()){using (RasterImage image = codecs.Load(imageFileName)){// Read the POSTNET barcodeReadBarcodes(engine.Reader, image, BarcodeSymbology.PostNet);// Read the PLANET barcodeReadBarcodes(engine.Reader, image, BarcodeSymbology.Planet);}}}private void WriteBarcode(BarcodeWriter writer, RasterImage image, BarcodeSymbology symbology, string value, LeadRect bounds){// Create the barcode dataBarcodeData barcode = new BarcodeData(symbology, value);barcode.Bounds = bounds;// Set the write optionsPostNetPlanetBarcodeWriteOptions options = new PostNetPlanetBarcodeWriteOptions();options.UseXModule = false;options.XModule = 30;// Write itConsole.WriteLine("Writing {0} barcode with data: {1}", symbology, value);writer.WriteBarcode(image, barcode, options);}private void ReadBarcodes(BarcodeReader reader, RasterImage image, BarcodeSymbology symbology){// Setup read optionsPostNetPlanetBarcodeReadOptions options = new PostNetPlanetBarcodeReadOptions();options.SearchDirection = BarcodeSearchDirection.Horizontal;options.Granularity = 9;options.WhiteLinesNumber = 3;options.ReturnCheckDigit = BarcodeReturnCheckDigit.Default;Console.WriteLine("Reading {0} barcodes", symbology);BarcodeData barcode = reader.ReadBarcode(image, LeadRect.Empty, symbology, options);if (barcode != null){Console.WriteLine(" At {0}, data: {1}", barcode.Bounds, barcode.Value);}else{Console.WriteLine(" Not found");}}static class LEAD_VARS{public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";}
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
