public bool SetLinkageBit { get; set; }
@property (nonatomic, assign) BOOL setLinkageBit;
public boolean getSetLinkageBit()
public void setSetLinkageBit(boolean value)
SetLinkageBit # get and set (GS1DatabarStackedBarcodeWriteOptions)
true to set the linkage bit when writing the barcode. Otherwise, false. The default value is false.
Used by both, the stacked and the expanded stacked GS1 Databar barcodes.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Barcode;
using Leadtools.ImageProcessing;
public void GS1DatabarStackedBarcode_Example()
{
string imageFileName = Path.Combine(LEAD_VARS.ImagesDir, "MyGS1DatabarStackedBarcodes.tif");
BarcodeEngine engine = new BarcodeEngine();
// Create the image to write the barcodes to
int resolution = 300;
using (RasterImage image = RasterImage.Create((int)(8.5 * resolution), (int)(11.0 * resolution), 1, resolution, RasterColor.FromKnownColor(RasterKnownColor.White)))
{
// Write a few GS1 Databar Stacked barcodes
WriteBarcode(engine.Writer, image, BarcodeSymbology.GS1DatabarStacked, "1234567890123", new LeadRect(10, 100, 400, 400));
WriteBarcode(engine.Writer, image, BarcodeSymbology.GS1DatabarExpandedStacked, "(01)00012345678905(10)ABC123", new LeadRect(10, 900, 400, 400));
// Save the image
using (RasterCodecs codecs = new RasterCodecs())
{
codecs.Save(image, imageFileName, RasterImageFormat.CcittGroup4, 1);
}
}
// Now read the barcodes again
using (RasterCodecs codecs = new RasterCodecs())
{
using (RasterImage image = codecs.Load(imageFileName))
{
// Read the GS1 Databar Stacked barcode
ReadBarcodes(engine.Reader, image, BarcodeSymbology.GS1DatabarStacked);
// Read the GS1 Databar Expanded Stacked barcode
ReadBarcodes(engine.Reader, image, BarcodeSymbology.GS1DatabarExpandedStacked);
}
}
}
private void WriteBarcode(BarcodeWriter writer, RasterImage image, BarcodeSymbology symbology, string value, LeadRect bounds)
{
// Create the barcode data
BarcodeData barcode = new BarcodeData(symbology, value);
barcode.Bounds = bounds;
// Set the write options
GS1DatabarStackedBarcodeWriteOptions options = new GS1DatabarStackedBarcodeWriteOptions();
options.UseXModule = false;
options.XModule = 30;
options.SetLinkageBit = false;
options.UseStackedOmniDirectionalFormat = false;
options.ExpandedStackedRowsCount = 2;
// Write it
Console.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 options
GS1DatabarStackedBarcodeReadOptions options = new GS1DatabarStackedBarcodeReadOptions();
options.SearchDirection = BarcodeSearchDirection.Horizontal;
options.EnableFastMode = true;
options.Granularity = 9;
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