public int Granularity { get; set; } @property (nonatomic, assign) NSInteger granularity; public int getGranularity()public void setGranularity(int value)
Granularity # get and set (OneDBarcodeReadOptions)
An Int32 that indicates the number of scanned lines per column to skip when reading a barcode. Must be a value greater to 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 OneDBarcode_Example(){string imageFileName = Path.Combine(LEAD_VARS.ImagesDir, "MyOneDBarcodes.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.UPCA, "01234567890", new LeadRect(10, 100, 400, 200));WriteBarcode(engine.Writer, image, BarcodeSymbology.Code128, "Code 128", new LeadRect(10, 400, 400, 200));WriteBarcode(engine.Writer, image, BarcodeSymbology.Code11, "124578", new LeadRect(10, 700, 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 UPC-A barcodeReadBarcodes(engine.Reader, image, BarcodeSymbology.UPCA);// Read the Code 128 barcodeReadBarcodes(engine.Reader, image, BarcodeSymbology.Code128);// Read the Code 11 barcodeReadBarcodes(engine.Reader, image, BarcodeSymbology.Code11);}}}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 optionsOneDBarcodeWriteOptions options = new OneDBarcodeWriteOptions();options.TextPosition = BarcodeOutputTextPosition.Default;options.UseXModule = false;options.XModule = 30;options.EnableErrorCheck = false;options.SetGS1DatabarLinkageBit = false;options.WriteTruncatedGS1Databar = false;options.Code128TableEncoding = Code128BarcodeTableEncoding.Auto;options.Code11CheckDigitType = Code11BarcodeCheckDigitType.CDigit;options.MSIModuloType = MSIBarcodeModuloType.Modulo10;// 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 optionsOneDBarcodeReadOptions options = new OneDBarcodeReadOptions();options.SearchDirection = BarcodeSearchDirection.Horizontal;options.EnableFastMode = true;options.Granularity = 9;options.MinimumStringLength = 3;options.MaximumStringLength = 0;options.WhiteLinesNumber = 3;options.ReturnCheckDigit = BarcodeReturnCheckDigit.Default;options.EnableErrorCheck = false;options.AvoidCorruptedBlocks = false;options.AllowPartialRead = false;options.Code11CheckDigitType = Code11BarcodeCheckDigitType.CDigit;options.MSIModuloType = MSIBarcodeModuloType.Modulo10;options.CalculateBarWidthReduction = true;options.Code39Extended = false;options.EnableDoublePass = false;options.EnablePreprocessing = false;options.ResizeSmall1D = false;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:\LEADTOOLS23\Resources\Images";}
import java.io.File;import java.io.IOException;import org.junit.*;import static org.junit.Assert.assertTrue;import org.junit.runner.JUnitCore;import org.junit.runner.Result;import org.junit.runner.notification.Failure;import leadtools.*;import leadtools.barcode.*;import leadtools.codecs.*;public void oneDBarcodeExample() {final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images";String imageFileName = combine(LEAD_VARS_IMAGES_DIR, "OneDBarcodes.tif");BarcodeEngine engine = new BarcodeEngine();// Create the image to write the barcodes toint resolution = 300;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.getWriter(), image, BarcodeSymbology.UPC_A, "01234567890", new LeadRect(10, 100, 400, 200));writeBarcode(engine.getWriter(), image, BarcodeSymbology.CODE_128, "Code 128", new LeadRect(10, 400, 400, 200));writeBarcode(engine.getWriter(), image, BarcodeSymbology.CODE_11, "124578", new LeadRect(10, 700, 400, 200));// Save the imageRasterCodecs codecs = new RasterCodecs();codecs.save(image, imageFileName, RasterImageFormat.CCITT_GROUP4, 1);// Now read the barcodes againimage = codecs.load(imageFileName);// Read the UPC-A barcodereadBarcodes(engine.getReader(), image, BarcodeSymbology.UPC_A);// Read the Code 128 barcodereadBarcodes(engine.getReader(), image, BarcodeSymbology.CODE_128);// Read the Code 11 barcodereadBarcodes(engine.getReader(), image, BarcodeSymbology.CODE_11);assertTrue(true);}// Create the barcode dataprivate void writeBarcode(BarcodeWriter writer, RasterImage image, BarcodeSymbology symbology, String value, LeadRect bounds) {BarcodeData barcode = new BarcodeData(symbology, value);barcode.setBounds(bounds);// Set the write optionsOneDBarcodeWriteOptions options = new OneDBarcodeWriteOptions();options.setTextPosition(BarcodeOutputTextPosition.DEFAULT);options.setUseXModule(false);options.setXModule(30);options.setEnableErrorCheck(false);options.setSetGS1DatabarLinkageBit(false);options.setWriteTruncatedGS1Databar(false);options.setCode128TableEncoding(Code128BarcodeTableEncoding.AUTO);options.setCode11CheckDigitType(Code11BarcodeCheckDigitType.C_DIGIT);options.setMSIModuloType(MSIBarcodeModuloType.MODULO10);// Write itSystem.out.printf("Writing %1s barcode with data: %2s%n", symbology, value);writer.writeBarcode(image, barcode, options);}// Setup read optionsprivate void readBarcodes(BarcodeReader reader, RasterImage image, BarcodeSymbology symbology) {OneDBarcodeReadOptions options = new OneDBarcodeReadOptions();options.setSearchDirection(BarcodeSearchDirection.HORIZONTAL);options.setEnableFastMode(true);options.setGranularity(9);options.setMinimumStringLength(3);options.setMaximumStringLength(0);options.setWhiteLinesNumber(3);options.setReturnCheckDigit(BarcodeReturnCheckDigit.DEFAULT);options.setEnableErrorCheck(false);options.setAvoidCorruptedBlocks(false);options.setAllowPartialRead(false);options.setCode11CheckDigitType(Code11BarcodeCheckDigitType.C_DIGIT);options.setMSIModuloType(MSIBarcodeModuloType.MODULO10);options.setCalculateBarWidthReduction(true);options.setCode39Extended(false);options.setEnableDoublePass(false);options.setEnablePreprocessing(false);options.setResizeSmall1D(false);System.out.printf("Reading %s barcodes%n", symbology);BarcodeData barcode = reader.readBarcode(image, LeadRect.getEmpty(), symbology, options);if (barcode != null) {System.out.printf(" At %1s, data: %2s%n", barcode.getBounds(), barcode.getValue());} else {System.out.println(" Not found");}}public static String combine(String path1, String path2) {File file = new File(path1, path2);return file.getPath();}
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
