Base class for all the barcode write options.
[SerializableAttribute()]
public abstract class BarcodeWriteOptions : BarcodeOptions
<TypeConverterAttribute()>
<SerializableAttribute()>
Public MustInherit Class BarcodeWriteOptions
Inherits BarcodeOptions
Implements System.ICloneable
@interface LTBarcodeWriteOptions : LTBarcodeOptions
public abstract class BarcodeWriteOptions extends BarcodeOptions
[TypeConverterAttribute()]
[SerializableAttribute()]
public ref class BarcodeWriteOptions abstract : public BarcodeOptions, System.ICloneable
The BarcodeWriter class contains the BarcodeWriter.WriteBarcode method which is used to write a barcode to an image. You must create an instance of BarcodeWriter, fill its members with the barcode properties and pass it to this method.
The BarcodeWriteOptions class and its derived types is used to control the options used when writing a barcode using LEADTOOLS. You can set the options in two ways:
The BarcodeWriter class contains default options for each barcode symbology (or group of common symbologies). These options can be retrieved using the BarcodeWriter.GetDefaultOptions method passing the symbology of interest. You can then change members of the returned BarcodeWriteOptions (or after casting it to the appropriate derived class).
You can also create an instance of one of the derived BarcodeWriteOptions classes and use it directly in the BarcodeWriter.WriteBarcode method which accepts the options as an input parameter.
The BarcodeWriteOptions contains the following members and features:
Member | Description |
---|---|
BarcodeWriteOptions.ForeColor |
Controls the barcode foreground color (color of the bars or symbols) to use when writing a barcode to an image. |
BarcodeWriteOptions.BackColor |
Controls the barcode background color (color of the spaces) to use when writing a barcode to an image. |
BarcodeWriteOptions.Load and BarcodeWriteOptions.Save |
Can be used to save or load the options to/from an XML file or stream. |
BarcodeWriteOptions.GetSupportedSymbologies and BarcodeWriteOptions.IsSupportedSymbology |
Can be used to get all the BarcodeSymbology's supported by this BarcodeWriteOptions type or to check when a particular symbology is supported. |
BarcodeWriteOptions is an abstract class and cannot be created directly, instead create one of the these derived classes:
Write options class | Descriptions |
---|---|
OneDBarcodeWriteOptions |
Standard 1D linear barcode options. Used when writing any of the following symbologies: EAN13, EAN8, UPCA, UPCE, Code3Of9, Code128, CodeInterleaved2Of5, Codabar, UCCEAN128, Code93, EANEXT5, EANEXT2, MSI, Code11, CodeStandard2Of5, GS1Databar, GS1DatabarLimited or GS1DatabarExpanded |
GS1DatabarStackedBarcodeWriteOptions |
GS1 DataBar Stacked barcode options. Used when writing GS1DatabarStacked or GS1DatabarExpandedStacked symbologies |
FourStateBarcodeWriteOptions |
4-State barcode options. Used when writing AustralianPost4State, RoyalMail4State or USPS4State symbologies |
PostNetPlanetBarcodeWriteOptions |
POSTNET/Planet barcode options. Used when writing PostNet or Planet symbologies |
PatchCodeBarcodeWriteOptions |
Patch code barcode options. Used when writing PatchCode symbology. |
DatamatrixBarcodeWriteOptions |
Datamatrix barcode options. Used when writing Datamatrix symbology. |
MicroPDF417BarcodeWriteOptions |
Micro PDF417 barcode options. Used when writing MicroPDF417 symbology. |
PDF417BarcodeWriteOptions |
PDF417 barcode options. Used when writing PDF417 symbology. |
QRBarcodeWriteOptions |
QR barcode options. Used when writing QR symbology. |
AztecBarcodeWriteOptions |
Aztec barcode options. Used when writing Aztec symbology. |
MaxiBarcodeWriteOptions |
Maxi barcode options. Used when writing Maxi symbology. |
MicroQRBarcodeWriteOptions |
MicroQR barcode options. Used when writing MicroQR symbology. |
PharmaCodeBarcodeWriteOptions |
PharmaCode barcode options. Used when writing PharmaCode symbology. |
This example sets the "Use X Module" option of all supported symbologies to be "true" and then creates TIFF files of all the supported barcodes.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Barcode;
using Leadtools.ImageProcessing;
public void BarcodeWriteOptions_Example()
{
// Create a directory to store the images we will create
string outDir = Path.Combine(LEAD_VARS.ImagesDir, "MyBarcodes");
if (Directory.Exists(outDir))
{
Directory.Delete(outDir, true);
}
Directory.CreateDirectory(outDir);
int resolution = 300;
// Create a Barcode engine
BarcodeEngine engine = new BarcodeEngine();
// Get the Barcode writer
BarcodeWriter writer = engine.Writer;
// All 1D options have the UseXModule set to false by default, we need to set it to true
// so we can calculate the default size. We will change the default options so we can
// pass null to CalculateBarcodeDataBounds and WriteBarcode below
// For all Standard 1D
OneDBarcodeWriteOptions oneDWriteOptions = writer.GetDefaultOptions(BarcodeSymbology.UPCA) as OneDBarcodeWriteOptions;
oneDWriteOptions.UseXModule = true;
// All GS1 Databar Stacked
GS1DatabarStackedBarcodeWriteOptions gs1DatabarStackedWriteOptions = writer.GetDefaultOptions(BarcodeSymbology.GS1DatabarStacked) as GS1DatabarStackedBarcodeWriteOptions;
gs1DatabarStackedWriteOptions.UseXModule = true;
// Patch Code
PatchCodeBarcodeWriteOptions patchCodeWriteOptions = writer.GetDefaultOptions(BarcodeSymbology.PatchCode) as PatchCodeBarcodeWriteOptions;
patchCodeWriteOptions.UseXModule = true;
// All PostNet/Planet
PostNetPlanetBarcodeWriteOptions postNetPlanetWriteOptions = writer.GetDefaultOptions(BarcodeSymbology.PostNet) as PostNetPlanetBarcodeWriteOptions;
postNetPlanetWriteOptions.UseXModule = true;
// We will use this object to save files
using (RasterCodecs codecs = new RasterCodecs())
{
// Get all the available write symbologies
BarcodeSymbology[] symbologies = writer.GetAvailableSymbologies();
foreach (BarcodeSymbology symbology in symbologies)
{
Console.WriteLine("Processing {0}", symbology);
// Create the default data for this symbology
BarcodeData data = BarcodeData.CreateDefaultBarcodeData(symbology);
// Calculate its size with default options
writer.CalculateBarcodeDataBounds(LeadRect.Empty, resolution, resolution, data, null);
// Create an image to write the data to
LeadRect pixels = data.Bounds;
using (RasterImage image = RasterImage.Create(pixels.Width, pixels.Height, 1, resolution, RasterColor.FromKnownColor(RasterKnownColor.White)))
{
// Write the barcode with default options
writer.WriteBarcode(image, data, null);
// Save it
string outFileName = Path.Combine(outDir, symbology + ".tif");
codecs.Save(image, outFileName, RasterImageFormat.Tif, 1);
}
}
}
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.Barcode
Imports Leadtools.ImageProcessing
Public Sub BarcodeWriteOptions_Example()
' Create a directory to store the images we will create
Dim outDir As String = Path.Combine(LEAD_VARS.ImagesDir, "MyBarcodes")
If Directory.Exists(outDir) Then
Directory.Delete(outDir, True)
End If
Directory.CreateDirectory(outDir)
Dim resolution As Integer = 300
' Create a Barcode engine
Dim engine As New BarcodeEngine()
' Get the Barcode writer
Dim writer As BarcodeWriter = engine.Writer
' All 1D options have the UseXModule set to false by default, we need to set it to true
' so we can calculate the default size. We will change the default options so we can
' pass null to CalculateBarcodeDataBounds and WriteBarcode below
' For all Standard 1D
Dim oneDWriteOptions As OneDBarcodeWriteOptions = DirectCast(writer.GetDefaultOptions(BarcodeSymbology.UPCA), OneDBarcodeWriteOptions)
oneDWriteOptions.UseXModule = True
' All GS1 Databar Stacked
Dim gs1DatabarStackedWriteOptions As GS1DatabarStackedBarcodeWriteOptions = DirectCast(writer.GetDefaultOptions(BarcodeSymbology.GS1DatabarStacked), GS1DatabarStackedBarcodeWriteOptions)
gs1DatabarStackedWriteOptions.UseXModule = True
' Patch Code
Dim patchCodeWriteOptions As PatchCodeBarcodeWriteOptions = DirectCast(writer.GetDefaultOptions(BarcodeSymbology.PatchCode), PatchCodeBarcodeWriteOptions)
patchCodeWriteOptions.UseXModule = True
' All PostNet/Planet
Dim postNetPlanetWriteOptions As PostNetPlanetBarcodeWriteOptions = DirectCast(writer.GetDefaultOptions(BarcodeSymbology.PostNet), PostNetPlanetBarcodeWriteOptions)
postNetPlanetWriteOptions.UseXModule = True
' We will use this object to save files
Using codecs As New RasterCodecs()
' Get all the available write symbologies
Dim symbologies() As BarcodeSymbology = writer.GetAvailableSymbologies()
For Each symbology As BarcodeSymbology In symbologies
Console.WriteLine("Processing {0}", symbology)
' Create the default data for this symbology
Dim data As BarcodeData = BarcodeData.CreateDefaultBarcodeData(symbology)
' Calculate its size with default options
writer.CalculateBarcodeDataBounds(LeadRect.Empty, resolution, resolution, data, Nothing)
' Create an image to write the data to
Dim pixels As LeadRect = data.Bounds
Using image As RasterImage = RasterImage.Create(pixels.Width, pixels.Height, 1, resolution, RasterColor.FromKnownColor(RasterKnownColor.White))
' Write the barcode with default options
writer.WriteBarcode(image, data, Nothing)
' Save it
Dim outFileName As String = Path.Combine(outDir, symbology.ToString() + ".tif")
codecs.Save(image, outFileName, RasterImageFormat.Tif, 1)
End Using
Next
End Using
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
c#[Silverlight C# Example]
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Forms;
using Leadtools.Barcode;
using Leadtools.ImageProcessing;
using Leadtools.Examples;
public void BarcodeWriteOptions_Example()
{
int resolution = 300;
// Create a Barcode engine
BarcodeEngine engine = new BarcodeEngine();
// Get the Barcode writer
BarcodeWriter writer = engine.Writer;
// All 1D options have the UseXModule set to false by default, we need to set it to true
// so we can calculate the default size. We will change the default options so we can
// pass null to CalculateBarcodeDataBounds and WriteBarcode below
// For all Standard 1D
OneDBarcodeWriteOptions oneDWriteOptions = writer.GetDefaultOptions(BarcodeSymbology.UPCA) as OneDBarcodeWriteOptions;
oneDWriteOptions.UseXModule = true;
// All GS1 Databar Stacked
GS1DatabarStackedBarcodeWriteOptions gs1DatabarStackedWriteOptions = writer.GetDefaultOptions(BarcodeSymbology.GS1DatabarStacked) as GS1DatabarStackedBarcodeWriteOptions;
gs1DatabarStackedWriteOptions.UseXModule = true;
// Patch Code
PatchCodeBarcodeWriteOptions patchCodeWriteOptions = writer.GetDefaultOptions(BarcodeSymbology.PatchCode) as PatchCodeBarcodeWriteOptions;
patchCodeWriteOptions.UseXModule = true;
// All PostNet/Planet
PostNetPlanetBarcodeWriteOptions postNetPlanetWriteOptions = writer.GetDefaultOptions(BarcodeSymbology.PostNet) as PostNetPlanetBarcodeWriteOptions;
postNetPlanetWriteOptions.UseXModule = true;
// We will use this object to save files
RasterCodecs codecs = new RasterCodecs();
// Get all the available write symbologies
BarcodeSymbology[] symbologies = writer.GetAvailableSymbologies();
foreach (BarcodeSymbology symbology in symbologies)
{
Console.WriteLine("Processing {0}", symbology);
// Create the default data for this symbology
BarcodeData data = BarcodeData.CreateDefaultBarcodeData(symbology);
// Calculate its size with default options
writer.CalculateBarcodeDataBounds(LogicalRectangle.Empty, resolution, resolution, data, null);
// Create an image to write the data to
LeadRect pixels = data.Bounds.ToRectangle(resolution, resolution);
using (RasterImage image = RasterImage.Create(pixels.Width, pixels.Height, 1, resolution, RasterColor.FromKnownColor(RasterKnownColor.White)))
{
// Write the barcode with default options
writer.WriteBarcode(image, data, null);
// Save it
using (SampleImageStream outputStream = new SampleImageStream(symbology + ".tif"))
{
codecs.Save(image, outputStream, RasterImageFormat.Tif, 1);
}
}
}
}
vb[Silverlight VB Example]
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.Forms
Imports Leadtools.Barcode
Imports Leadtools.ImageProcessing
Public Sub BarcodeWriteOptions_Example()
Dim resolution As Integer = 300
' Create a Barcode engine
Dim engine As BarcodeEngine = New BarcodeEngine()
' Get the Barcode writer
Dim writer As BarcodeWriter = engine.Writer
' All 1D options have the UseXModule set to false by default, we need to set it to true
' so we can calculate the default size. We will change the default options so we can
' pass null to CalculateBarcodeDataBounds and WriteBarcode below
' For all Standard 1D
Dim oneDWriteOptions As OneDBarcodeWriteOptions = TryCast(writer.GetDefaultOptions(BarcodeSymbology.UPCA), OneDBarcodeWriteOptions)
oneDWriteOptions.UseXModule = True
' All GS1 Databar Stacked
Dim gs1DatabarStackedWriteOptions As GS1DatabarStackedBarcodeWriteOptions = TryCast(writer.GetDefaultOptions(BarcodeSymbology.GS1DatabarStacked), GS1DatabarStackedBarcodeWriteOptions)
gs1DatabarStackedWriteOptions.UseXModule = True
' Patch Code
Dim patchCodeWriteOptions As PatchCodeBarcodeWriteOptions = TryCast(writer.GetDefaultOptions(BarcodeSymbology.PatchCode), PatchCodeBarcodeWriteOptions)
patchCodeWriteOptions.UseXModule = True
' All PostNet/Planet
Dim postNetPlanetWriteOptions As PostNetPlanetBarcodeWriteOptions = TryCast(writer.GetDefaultOptions(BarcodeSymbology.PostNet), PostNetPlanetBarcodeWriteOptions)
postNetPlanetWriteOptions.UseXModule = True
' We will use this object to save files
Dim codecs As RasterCodecs = New RasterCodecs()
' Get all the available write symbologies
Dim symbologies As BarcodeSymbology() = writer.GetAvailableSymbologies()
For Each symbology As BarcodeSymbology In symbologies
Console.WriteLine("Processing {0}", symbology)
' Create the default data for this symbology
Dim data As BarcodeData = BarcodeData.CreateDefaultBarcodeData(symbology)
' Calculate its size with default options
writer.CalculateBarcodeDataBounds(LogicalRectangle.Empty, resolution, resolution, data, Nothing)
' Create an image to write the data to
Dim pixels As LeadRect = data.Bounds.ToRectangle(resolution, resolution)
Using image As RasterImage = RasterImage.Create(pixels.Width, pixels.Height, 1, resolution, RasterColor.FromKnownColor(RasterKnownColor.White))
' Write the barcode with default options
writer.WriteBarcode(image, data, Nothing)
' Save it
Using outputStream As SampleImageStream = New SampleImageStream(symbology & ".tif")
codecs.Save(image, outputStream, RasterImageFormat.Tif, 1)
End Using
End Using
Next symbology
End Sub
GS1DatabarStackedBarcodeWriteOptions Class
FourStateBarcodeWriteOptions Class
PostNetPlanetBarcodeWriteOptions Class
PatchCodeBarcodeWriteOptions Class
DatamatrixBarcodeWriteOptions Class
MicroPDF417BarcodeWriteOptions Class
PDF417BarcodeWriteOptions Class
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