Aspose::BarCode::Generation Namespace Reference

Namespaces

 ParamsSpecification
 

Classes

class  AustralianPostParameters
 AustralianPost barcode parameters. More...
 
class  AztecParameters
 Aztec parameters. More...
 
class  BarcodeGenerator
 BarcodeGenerator for backend barcode images generation. More...
 
class  BarcodeParameters
 Barcode generation parameters. More...
 
class  BaseEncodeType
 Base class for SymbologyEncodeType. More...
 
class  BaseGenerationParameters
 Barcode image generation parameters. More...
 
class  BorderParameters
 Barcode image border parameters More...
 
class  CaptionParameters
 Caption parameters. More...
 
class  CodabarParameters
 Codabar parameters. More...
 
class  CodablockParameters
 Codablock parameters. More...
 
class  Code16KParameters
 Code16K parameters. More...
 
class  CodetextParameters
 Codetext parameters. More...
 
class  CouponParameters
 Coupon parameters. Used for UpcaGs1DatabarCoupon, UpcaGs1Code128Coupon. More...
 
class  DataBarParameters
 Databar parameters. More...
 
class  DataMatrixParameters
 DataMatrix parameters. More...
 
class  DotCodeExtCodetextBuilder
 
class  DotCodeParameters
 DotCode parameters. More...
 
class  EncodeTypes
 Specifies the type of barcode to encode. More...
 
class  ExtCodetextBuilder
 Helper class for automatic codetext generation of the Extended Codetext Mode More...
 
class  FontUnit
 Defines a particular format for text, including font face, size, and style attributes where size in Unit value property. More...
 
class  GS1CompositeBarParameters
 GS1 Composite bar parameters. More...
 
class  ISimplePropertyChangedEventHandler
 
class  ITFParameters
 ITF parameters. More...
 
class  MaxiCodeExtCodetextBuilder
 
class  MaxiCodeParameters
 MaxiCode parameters. More...
 
class  Padding
 Paddings parameters. More...
 
class  PatchCodeParameters
 PatchCode parameters. More...
 
class  Pdf417Parameters
 PDF417 parameters. Contains PDF417, MacroPDF417 and MicroPDF417 parameters. MacroPDF417 requires two fields: Pdf417MacroFileID and Pdf417MacroSegmentID. All other fields are optional. MicroPDF417 in Structured Append mode (same as MacroPDF417 mode) requires two fields: Pdf417MacroFileID and Pdf417MacroSegmentID. All other fields are optional. More...
 
class  PostalParameters
 Postal parameters. Used for Postnet, Planet. More...
 
class  QrExtCodetextBuilder
 
class  QrParameters
 QR parameters. More...
 
class  QrStructuredAppendParameters
 QR structured append parameters. More...
 
class  SupplementParameters
 Supplement parameters. Used for Interleaved2of5, Standard2of5, EAN13, EAN8, UPCA, UPCE, ISBN, ISSN, ISMN. More...
 
class  SymbologyEncodeType
 Symbology encode type. See EncodeTypes to get instance. More...
 
class  Unit
 Specifies the size value in different units (Pixel, Inches, etc.). More...
 

Enumerations

enum  BarcodeClassifications {
  BarcodeClassifications::None, BarcodeClassifications::Type1D, BarcodeClassifications::Type2D, BarcodeClassifications::Postal,
  BarcodeClassifications::Databar, BarcodeClassifications::Coupon
}
 Symbology classification
More...
 
enum  AutoSizeMode { AutoSizeMode::None, AutoSizeMode::Nearest, AutoSizeMode::Interpolation }
 Specifies the different types of automatic sizing modes. More...
 
enum  AztecSymbolMode { AztecSymbolMode::Auto, AztecSymbolMode::Compact, AztecSymbolMode::FullRange, AztecSymbolMode::Rune }
 Specifies the Aztec symbol mode. More...
 
enum  BarCodeImageFormat {
  BarCodeImageFormat::Bmp, BarCodeImageFormat::Gif, BarCodeImageFormat::Jpeg, BarCodeImageFormat::Png,
  BarCodeImageFormat::Tiff, BarCodeImageFormat::TiffInCmyk, BarCodeImageFormat::Emf, BarCodeImageFormat::Svg
}
 Specifies the file format of the image. More...
 
enum  TwoDComponentType { TwoDComponentType::Auto = 0, TwoDComponentType::CC_A = 1, TwoDComponentType::CC_B = 2, TwoDComponentType::CC_C = 3 }
 Type of 2D component More...
 
enum  BorderDashStyle {
  BorderDashStyle::Solid = 0, BorderDashStyle::Dash = 1, BorderDashStyle::Dot = 2, BorderDashStyle::DashDot = 3,
  BorderDashStyle::DashDotDot = 4
}
 Specifies the style of dashed border lines. More...
 
enum  CodabarChecksumMode { CodabarChecksumMode::Mod10, CodabarChecksumMode::Mod16 }
 Specifies the checksum algorithm for Codabar More...
 
enum  CodabarSymbol : int16_t { CodabarSymbol::A = static_cast<int16_t>((int16_t)u'A'), CodabarSymbol::B = static_cast<int16_t>((int16_t)u'B'), CodabarSymbol::C = static_cast<int16_t>((int16_t)u'C'), CodabarSymbol::D = static_cast<int16_t>((int16_t)u'D') }
 Specifies the start or stop symbol of the Codabar barcode specification. More...
 
enum  FontMode { FontMode::Auto = 0, FontMode::Manual = 1 }
 Font size mode. More...
 
enum  CodeLocation { CodeLocation::Below = 0, CodeLocation::Above = 1, CodeLocation::None = 2 }
 Codetext location More...
 
enum  DataMatrixEccType {
  DataMatrixEccType::EccAuto, DataMatrixEccType::Ecc000, DataMatrixEccType::Ecc050, DataMatrixEccType::Ecc080,
  DataMatrixEccType::Ecc100, DataMatrixEccType::Ecc140, DataMatrixEccType::Ecc200
}
 Specify the type of the ECC to encode. More...
 
enum  DataMatrixEncodeMode {
  DataMatrixEncodeMode::Auto = 0, DataMatrixEncodeMode::ASCII = 1, DataMatrixEncodeMode::Full = 6, DataMatrixEncodeMode::Custom = 7,
  DataMatrixEncodeMode::C40 = 8, DataMatrixEncodeMode::Text = 9, DataMatrixEncodeMode::EDIFACT = 10, DataMatrixEncodeMode::ANSIX12 = 11,
  DataMatrixEncodeMode::ExtendedCodetext = 12
}
 DataMatrix encoder's encoding mode, default to Auto More...
 
enum  DotCodeEncodeMode { DotCodeEncodeMode::Auto, DotCodeEncodeMode::Bytes, DotCodeEncodeMode::ExtendedCodetext }
 Encoding mode for DotCode barcodes. More...
 
enum  ECIEncodings {
  ECIEncodings::ISO_8859_1 = 3, ECIEncodings::ISO_8859_2 = 4, ECIEncodings::ISO_8859_3 = 5, ECIEncodings::ISO_8859_4 = 6,
  ECIEncodings::ISO_8859_5 = 7, ECIEncodings::ISO_8859_6 = 8, ECIEncodings::ISO_8859_7 = 9, ECIEncodings::ISO_8859_8 = 10,
  ECIEncodings::ISO_8859_9 = 11, ECIEncodings::ISO_8859_10 = 12, ECIEncodings::ISO_8859_11 = 13, ECIEncodings::ISO_8859_13 = 15,
  ECIEncodings::ISO_8859_14 = 16, ECIEncodings::ISO_8859_15 = 17, ECIEncodings::ISO_8859_16 = 18, ECIEncodings::Shift_JIS = 20,
  ECIEncodings::Win1250 = 21, ECIEncodings::Win1251 = 22, ECIEncodings::Win1252 = 23, ECIEncodings::Win1256 = 24,
  ECIEncodings::UTF16BE = 25, ECIEncodings::UTF8 = 26, ECIEncodings::US_ASCII = 27, ECIEncodings::Big5 = 28,
  ECIEncodings::GB18030 = 29, ECIEncodings::EUC_KR = 30, ECIEncodings::NONE = 0
}
 
enum  EnableChecksum { EnableChecksum::Default, EnableChecksum::Yes, EnableChecksum::No }
 
enum  ITF14BorderType {
  ITF14BorderType::None, ITF14BorderType::Frame, ITF14BorderType::Bar, ITF14BorderType::FrameOut,
  ITF14BorderType::BarOut
}
 ITF14 border type of barcode More...
 
enum  MacroCharacter { MacroCharacter::None = 0, MacroCharacter::Macro05 = 5, MacroCharacter::Macro06 = 6 }
 Macro Characters 05 and 06 values are used to obtain more compact encoding in special modes. 05 Macro craracter is translated to "[)>\u001E05\u001D" as decoded data header and "\u001E\u0004" as decoded data trailer. 06 Macro craracter is translated to "[)>\u001E06\u001D" as decoded data header and "\u001E\u0004" as decoded data trailer. More...
 
enum  Pdf417MacroTerminator { Pdf417MacroTerminator::Auto, Pdf417MacroTerminator::None, Pdf417MacroTerminator::Set }
 Used to tell the encoder whether to add Macro PDF417 Terminator (codeword 922) to the segment. Applied only for Macro PDF417. More...
 
enum  MaxiCodeEncodeMode { MaxiCodeEncodeMode::Auto, MaxiCodeEncodeMode::Bytes, MaxiCodeEncodeMode::ExtendedCodetext }
 Encoding mode for MaxiCode barcodes. More...
 
enum  MaxiCodeMode {
  MaxiCodeMode::Mode2 = 2, MaxiCodeMode::Mode3 = 3, MaxiCodeMode::Mode4 = 4, MaxiCodeMode::Mode5 = 5,
  MaxiCodeMode::Mode6 = 6
}
 Encoding mode for MaxiCode barcodes. More...
 
enum  PatchFormat {
  PatchFormat::PatchOnly, PatchFormat::A4, PatchFormat::A4_LANDSCAPE, PatchFormat::US_Letter,
  PatchFormat::US_Letter_LANDSCAPE
}
 PatchCode format. Choose PatchOnly to generate single PatchCode. Use page format to generate Patch page with PatchCodes as borders More...
 
enum  Pdf417CompactionMode { Pdf417CompactionMode::Auto = 0, Pdf417CompactionMode::Text = 1, Pdf417CompactionMode::Numeric = 2, Pdf417CompactionMode::Binary = 3 }
 Pdf417 barcode compaction mode More...
 
enum  Pdf417ErrorLevel {
  Pdf417ErrorLevel::Level0 = 0, Pdf417ErrorLevel::Level1, Pdf417ErrorLevel::Level2, Pdf417ErrorLevel::Level3,
  Pdf417ErrorLevel::Level4, Pdf417ErrorLevel::Level5, Pdf417ErrorLevel::Level6, Pdf417ErrorLevel::Level7,
  Pdf417ErrorLevel::Level8
}
 pdf417 barcode's error correction level, from level 0 to level 9, level 0 means no error correction, level 9 means best error correction More...
 
enum  QREncodeMode {
  QREncodeMode::Auto = 0, QREncodeMode::Bytes = 1, QREncodeMode::Utf8BOM = 2, QREncodeMode::Utf16BEBOM = 3,
  QREncodeMode::ECIEncoding = 4, QREncodeMode::ExtendedCodetext = 5
}
 Encoding mode for QR barcodes. It is recommended to Use Auto with CodeTextEncoding = Encoding.UTF8 for Latin symbols or digits and Utf8BOM for Unicode symbols. More...
 
enum  QREncodeType { QREncodeType::Auto = 0, QREncodeType::ForceQR = 1, QREncodeType::ForceMicroQR = 2 }
 QR / MicroQR selector mode. Select ForceQR for standard QR symbols, Auto for MicroQR. ForceMicroQR is used for strongly MicroQR symbol generation if it is possible. More...
 
enum  QRErrorLevel { QRErrorLevel::LevelL = 0, QRErrorLevel::LevelM = 1, QRErrorLevel::LevelQ = 2, QRErrorLevel::LevelH = 3 }
 Level of Reed-Solomon error correction. From low to high: LevelL, LevelM, LevelQ, LevelH. More...
 
enum  QRVersion {
  QRVersion::Auto = 0, QRVersion::Version01 = 1, QRVersion::Version02 = 2, QRVersion::Version03 = 3,
  QRVersion::Version04 = 4, QRVersion::Version05 = 5, QRVersion::Version06 = 6, QRVersion::Version07 = 7,
  QRVersion::Version08 = 8, QRVersion::Version09 = 9, QRVersion::Version10 = 10, QRVersion::Version11 = 11,
  QRVersion::Version12 = 12, QRVersion::Version13 = 13, QRVersion::Version14 = 14, QRVersion::Version15 = 15,
  QRVersion::Version16 = 16, QRVersion::Version17 = 17, QRVersion::Version18 = 18, QRVersion::Version19 = 19,
  QRVersion::Version20 = 20, QRVersion::Version21 = 21, QRVersion::Version22 = 22, QRVersion::Version23 = 23,
  QRVersion::Version24 = 24, QRVersion::Version25 = 25, QRVersion::Version26 = 26, QRVersion::Version27 = 27,
  QRVersion::Version28 = 28, QRVersion::Version29 = 29, QRVersion::Version30 = 30, QRVersion::Version31 = 31,
  QRVersion::Version32 = 32, QRVersion::Version33 = 33, QRVersion::Version34 = 34, QRVersion::Version35 = 35,
  QRVersion::Version36 = 36, QRVersion::Version37 = 37, QRVersion::Version38 = 38, QRVersion::Version39 = 39,
  QRVersion::Version40 = 40, QRVersion::VersionM1 = 101, QRVersion::VersionM2 = 102, QRVersion::VersionM3 = 103,
  QRVersion::VersionM4 = 104
}
 Version of QR Code. From Version1 to Version40 for QR code and from M1 to M4 for MicroQr. More...
 
enum  TextAlignment { TextAlignment::Left = 0, TextAlignment::Center = 1, TextAlignment::Right = 2 }
 Text alignment. More...
 
enum  Code128Emulation { Code128Emulation::None = 0, Code128Emulation::Code903 = 903, Code128Emulation::Code904 = 904, Code128Emulation::Code905 = 905 }
 Function codewords for Code 128 emulation. Applied for MicroPDF417 only. Ignored for PDF417 and MacroPDF417 barcodes. More...
 

Enumeration Type Documentation

◆ AutoSizeMode

Specifies the different types of automatic sizing modes.

Enumerator
None 

Automatic resizing is disabled.

Nearest 

Resizes barcode to nearest lowest possible size specified by BarCodeWidth and BarCodeHeight properties. Preserves default aspect ratio.

Interpolation 

Resizes barcode to specified size. Size can be specified by BarCodeWidth and BarCodeHeight properties. Generated barcode may be invalid (not readable) after scaling.

◆ AztecSymbolMode

Specifies the Aztec symbol mode.

This sample shows how to change Aztec Symbol mode and save a BarCode image.

[C#]
{
generator.CodeText = "125";
generator.Parameters.Barcode.Aztec.AztecSymbolMode = AztecSymbolMode.Rune;
generator.Save("test.png");
}
[VB.NET]
Using generator As New Aspose.BarCode.Generation.BarcodeGenerator(EncodeTypes.Aztec)
generator.CodeText = "125"
generator.Parameters.Barcode.Aztec.AztecSymbolMode = AztecSymbolMode.Rune
generator.Save("test.png")
End Using
Enumerator
Auto 

Specifies to automatically pick up the best symbol (Compact or Full-range) for Aztec. This is default value.

Compact 

Specifies the Compact symbol for Aztec. Aztec Compact symbol permits only 1, 2, 3 or 4 layers.

FullRange 

Specifies the Full-range symbol for Aztec. Aztec Full-range symbol permits from 1 to 32 layers.

Rune 

Specifies the Rune symbol for Aztec. Aztec Runes are a series of small but distinct machine-readable marks. It permits only number value from 0 to 255.

◆ BarcodeClassifications

Symbology classification

Enumerator
None 

Unspecified classification

Type1D 

Specifies 1D-barcode

Type2D 

Specifies 2D-barcode

Postal 

Specifies Postal-barcode

Databar 

Specifies DataBar-barcode

Coupon 

Specifies Coupon-barcode

◆ BarCodeImageFormat

Specifies the file format of the image.

Enumerator
Bmp 

Specifies the bitmap (BMP) image format.

Gif 

Specifies the Graphics Interchange Format (GIF) image format.

Jpeg 

Specifies the Joint Photographic Experts Group (JPEG) image format.

Png 

Specifies the W3C Portable Network Graphics (PNG) image format.

Tiff 

Specifies the Tagged Image File Format (TIFF) image format.

TiffInCmyk 

Specifies the Tagged Image File Format (TIFF) image format in CMYK color model. (Supported only on Windows platform, on *nix platforms is saved as Tiff)

Emf 

Specifies the Enhanced Metafile (EMF) image format. (Supported only on Windows platform, on *nix platforms is saved as PNG)

Svg 

Specifies the Scalable Vector Graphics (SVG) image format.

◆ BorderDashStyle

Specifies the style of dashed border lines.

Enumerator
Solid 

Specifies a solid line.

Dash 

Specifies a line consisting of dashes.

Dot 

Specifies a line consisting of dots.

DashDot 

Specifies a line consisting of a repeating pattern of dash-dot.

DashDotDot 

Specifies a line consisting of a repeating pattern of dash-dot-dot.

◆ CodabarChecksumMode

Specifies the checksum algorithm for Codabar

Enumerator
Mod10 

Specifies Mod 10 algorithm for Codabar.

Mod16 

Specifies Mod 16 algorithm for Codabar (recomended AIIM).

◆ CodabarSymbol

Specifies the start or stop symbol of the Codabar barcode specification.

Enumerator

Specifies character A as the start or stop symbol of the Codabar barcode specification.

Specifies character B as the start or stop symbol of the Codabar barcode specification.

Specifies character C as the start or stop symbol of the Codabar barcode specification.

Specifies character D as the start or stop symbol of the Codabar barcode specification.

◆ Code128Emulation

Function codewords for Code 128 emulation. Applied for MicroPDF417 only. Ignored for PDF417 and MacroPDF417 barcodes.

Enumerator
None 

No Code 128 emulation

Code903 

UCC/EAN-128 emulation. Text compactionmode implied.

Code904 

UCC/EAN-128 emulation. Numeric compactionmode implied.

Code905 

UCC/EAN-128 emulation. Implied “01” AI and 14-digit codetext.

◆ CodeLocation

Codetext location

Enumerator
Below 

Codetext below barcode.

Above 

Codetext above barcode.

None 

Hide codetext.

◆ DataMatrixEccType

Specify the type of the ECC to encode.

Enumerator
EccAuto 

Specifies that encoded Ecc type is defined by default Reed-Solomon error correction or ECC 200.

Ecc000 

Specifies that encoded Ecc type is defined ECC 000.

Ecc050 

Specifies that encoded Ecc type is defined ECC 050.

Ecc080 

Specifies that encoded Ecc type is defined ECC 080.

Ecc100 

Specifies that encoded Ecc type is defined ECC 100.

Ecc140 

Specifies that encoded Ecc type is defined ECC 140.

Ecc200 

Specifies that encoded Ecc type is defined ECC 200. Recommended to use.

◆ DataMatrixEncodeMode

DataMatrix encoder's encoding mode, default to Auto

Enumerator
Auto 

Automatically pick up the best encode mode for Datamatrix encoding

ASCII 

Encodes one alphanumeric or two numeric characters per byte

Full 

Encode 8 bit values

Custom 

Encode with the encoding specified in BarcodeGenerator.Parameters.Barcode.DataMatrix.CodeTextEncoding

C40 

Uses C40 encoding. Encodes Upper-case alphanumeric, Lower case and special characters

Text 

Uses Text encoding. Encodes Lower-case alphanumeric, Upper case and special characters

EDIFACT 

Uses EDIFACT encoding. Uses six bits per character, encodes digits, upper-case letters, and many punctuation marks, but has no support for lower-case letters.

ANSIX12 

Uses ANSI X12 encoding.

ExtendedCodetext 

ExtendedCodetext mode allows to manually switch encodation schemes in codetext.

Format : "\Encodation_scheme_name:text\Encodation_scheme_name:text".

Allowed encodation schemes are: EDIFACT, ANSIX12, ASCII, C40, Text, Auto.

Extended codetext example: ":ANSIX12TEXT:backslash must be \ doubled:EdifactEncodedText"

All backslashes () must be doubled in text.

This sample shows how to do codetext in Extended Mode.

[C#]
using (Aspose.BarCode.Generation.BarcodeGenerator generator = new Aspose.BarCode.Generation.BarcodeGenerator(EncodeTypes.DataMatrix))
{
generator.CodeText = @"\ansix12:ANSIX12TEXT\ascii:backslash must be \\ doubled\edifact:EdifactEncodedText";
generator.Parameters.Barcode.DataMatrix.DataMatrixEncodeMode = DataMatrixEncodeMode.ExtendedCodetext;
generator.Parameters.Barcode.CodeTextParameters.TwoDDisplayText = "My Text";
generator.Save("test.png");
}
[VB.NET]
Using generator As New Aspose.BarCode.Generation.BarcodeGenerator(EncodeTypes.DataMatrix)
generator.CodeText = "\\ansix12:ANSIX12TEXT\\ascii:backslash must be \\\\ escaped and doubled\\edifact:EdifactEncodedText"
generator.Parameters.Barcode.DataMatrix.DataMatrixEncodeMode = DataMatrixEncodeMode.ExtendedCodetext
generator.Parameters.Barcode.CodeTextParameters.TwoDDisplayText = "My Text"
generator.Save("test.png")
End Using

◆ DotCodeEncodeMode

Encoding mode for DotCode barcodes.

[C#]
//Auto mode with macros
var codetext = ""[)>\u001E05\u001DCodetextWithMacros05\u001E\u0004"";
using (var generator = new BarcodeGenerator(EncodeTypes.DotCode, codetext))
{
generator.Save("test.bmp");
}
//Auto mode
var codetext = "犬Right狗";
using (var generator = new BarcodeGenerator(EncodeTypes.DotCode, codetext))
{
generator.Parameters.Barcode.DotCode.ECIEncoding = ECIEncodings.UTF8;
generator.Save("test.bmp");
}
//Bytes mode
byte[] encodedArr = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 };
//encode array to string
StringBuilder strBld = new StringBuilder();
foreach (byte bval in encodedArr)
strBld.Append((char) bval);
var codetext = strBld.ToString();
using (var generator = new BarcodeGenerator(EncodeTypes.DotCode, codetext))
{
generator.Parameters.Barcode.DotCode.DotCodeEncodeMode = DotCodeEncodeMode.Bytes;
generator.Save("test.bmp");
}
//Extended codetext mode
//create codetext
DotCodeExtCodetextBuilder textBuilder = new DotCodeExtCodetextBuilder();
textBuilder.AddFNC1FormatIdentifier();
textBuilder.AddECICodetext(ECIEncodings.Win1251, "Will");
textBuilder.AddFNC1FormatIdentifier();
textBuilder.AddECICodetext(ECIEncodings.UTF8, "犬Right狗");
textBuilder.AddFNC3SymbolSeparator();
textBuilder.AddFNC1FormatIdentifier();
textBuilder.AddECICodetext(ECIEncodings.UTF16BE, "犬Power狗");
textBuilder.AddPlainCodetext("Plain text");
//generate codetext
string codetext = textBuilder.GetExtendedCodetext();
<br>
//generate
using(BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.DotCode, codetext))
{
generator.Parameters.Barcode.DotCode.DotCodeEncodeMode = DotCodeEncodeMode.ExtendedCodetext;
generator.Save("test.bmp");
}
Enumerator
Auto 

Encode codetext with value set in the ECIEncoding property.

Bytes 

Encode codetext as plain bytes. If it detects any Unicode character, the character will be encoded as two bytes, lower byte first.

ExtendedCodetext 

Extended mode which supports multi ECI modes.

It is better to use DotCodeExtCodetextBuilder for extended codetext generation.

Use Display2DText property to set visible text to removing managing characters.

ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier

All unicode characters after ECI identifier are automatically encoded into correct character codeset.

◆ ECIEncodings

Extended Channel Interpretation Identifiers. It is used to tell the barcode reader details about the used references for encoding the data in the symbol. Current implementation consists all well known charset encodings. Currently, it is used only for QR 2D barcode.

This sample shows how to use ECI encoding and save a BarCode image.

[C#]
{
generator.CodeText = "12345TEXT";
generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.ECIEncoding;
generator.Parameters.Barcode.QR.QrEncodeType = QREncodeType.ForceQR;
generator.Parameters.Barcode.QR.QrECIEncoding = ECIEncodings.UTF8;
generator.Save("test.png");
}
[VB.NET]
Using generator As New Aspose.BarCode.Generation.BarcodeGenerator(EncodeTypes.QR)
generator.CodeText = "12345TEXT"
generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.ECIEncoding
generator.Parameters.Barcode.QR.QrEncodeType = QREncodeType.ForceQR
generator.Parameters.Barcode.QR.QrECIEncoding = ECIEncodings.UTF8
generator.Save("test.png")
End Using
Enumerator
ISO_8859_1 

ISO/IEC 8859-1 Latin alphabet No. 1 encoding. ECI Id:"\000003"

ISO_8859_2 

ISO/IEC 8859-2 Latin alphabet No. 2 encoding. ECI Id:"\000004"

ISO_8859_3 

ISO/IEC 8859-3 Latin alphabet No. 3 encoding. ECI Id:"\000005"

ISO_8859_4 

ISO/IEC 8859-4 Latin alphabet No. 4 encoding. ECI Id:"\000006"

ISO_8859_5 

ISO/IEC 8859-5 Latin/Cyrillic alphabet encoding. ECI Id:"\000007"

ISO_8859_6 

ISO/IEC 8859-6 Latin/Arabic alphabet encoding. ECI Id:"\000008"

ISO_8859_7 

ISO/IEC 8859-7 Latin/Greek alphabet encoding. ECI Id:"\000009"

ISO_8859_8 

ISO/IEC 8859-8 Latin/Hebrew alphabet encoding. ECI Id:"\000010"

ISO_8859_9 

ISO/IEC 8859-9 Latin alphabet No. 5 encoding. ECI Id:"\000011"

ISO_8859_10 

ISO/IEC 8859-10 Latin alphabet No. 6 encoding. ECI Id:"\000012"

ISO_8859_11 

ISO/IEC 8859-11 Latin/Thai alphabet encoding. ECI Id:"\000013"

ISO_8859_13 

ISO/IEC 8859-13 Latin alphabet No. 7 (Baltic Rim) encoding. ECI Id:"\000015"

ISO_8859_14 

ISO/IEC 8859-14 Latin alphabet No. 8 (Celtic) encoding. ECI Id:"\000016"

ISO_8859_15 

ISO/IEC 8859-15 Latin alphabet No. 9 encoding. ECI Id:"\000017"

ISO_8859_16 

ISO/IEC 8859-16 Latin alphabet No. 10 encoding. ECI Id:"\000018"

Shift_JIS 

Shift JIS (JIS X 0208 Annex 1 + JIS X 0201) encoding. ECI Id:"\000020"

Win1250 

Windows 1250 Latin 2 (Central Europe) encoding. ECI Id:"\000021"

Win1251 

Windows 1251 Cyrillic encoding. ECI Id:"\000022"

Win1252 

Windows 1252 Latin 1 encoding. ECI Id:"\000023"

Win1256 

Windows 1256 Arabic encoding. ECI Id:"\000024"

UTF16BE 

ISO/IEC 10646 UCS-2 (High order byte first) encoding. ECI Id:"\000025"

UTF8 

ISO/IEC 10646 UTF-8 encoding. ECI Id:"\000026"

US_ASCII 

ISO/IEC 646:1991 International Reference Version of ISO 7-bit coded character set encoding. ECI Id:"\000027"

Big5 

Big 5 (Taiwan) Chinese Character Set encoding. ECI Id:"\000028"

GB18030 

GB (PRC) Chinese Character Set encoding. ECI Id:"\000029"

EUC_KR 

Korean Character Set encoding. ECI Id:"\000030"

NONE 

No Extended Channel Interpretation

◆ EnableChecksum

Enable checksum during generation for 1D barcodes.

Default is treated as Yes for symbologies which must contain checksum, as No where checksum only possible.

Checksum never used: Codabar

Checksum is possible: Code39 Standard/Extended, Standard2of5, Interleaved2of5, Matrix2of5, ItalianPost25, DeutschePostIdentcode, DeutschePostLeitcode, VIN

Checksum always used: Rest symbologies

Enumerator
Default 

If checksum is required by the specification - it will be attached.

Yes 

Always use checksum if possible.

No 

Do not use checksum.

◆ FontMode

Font size mode.

Enumerator
Auto 

Automatically calculate Font size based on barcode size.

Manual 

Use Font sized defined by user.

◆ ITF14BorderType

ITF14 border type of barcode

Enumerator
None 

No border enclosing the barcode

Frame 

Frame enclosing the barcode

Bar 

Two horizontal bars enclosing the barcode

FrameOut 

Frame enclosing the barcode. It drawn outside of the barcode, and does not affect the height

BarOut 

Two horizontal bars enclosing the barcode. It drawn outside of the barcode, and does not affect the height

◆ MacroCharacter

Macro Characters 05 and 06 values are used to obtain more compact encoding in special modes. 05 Macro craracter is translated to "[)>\u001E05\u001D" as decoded data header and "\u001E\u0004" as decoded data trailer. 06 Macro craracter is translated to "[)>\u001E06\u001D" as decoded data header and "\u001E\u0004" as decoded data trailer.

Enumerator
None 

None of Macro Characters are added to barcode data

Macro05 

05 Macro craracter is added to barcode data in first position. GS1 Data Identifier ISO 15434 Character is translated to "[)>\u001E05\u001D" as decoded data header and "\u001E\u0004" as decoded data trailer.

This sample shows how to detect Code39 and Code128 barcodes.

[C#]
//to generate autoidentified GS1 message like this "(10)123ABC(10)123ABC" in ISO 15434 format you need:
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.DataMatrix, "10123ABC\u001D10123ABC");
generator.Parameters.Barcode.DataMatrix.MacroCharacters = MacroCharacter.Macro05;
BarCodeReader reader = new BarCodeReader(generator.GenerateBarCodeImage(), DecodeType.GS1DataMatrix);
foreach (BarCodeResult result in reader.ReadBarCodes())
Console.WriteLine("BarCode CodeText: " + result.CodeText);
Macro06 

06 Macro craracter is added to barcode data in first position. ASC MH10 Data Identifier ISO 15434 Character is translated to "[)>\u001E06\u001D" as decoded data header and "\u001E\u0004" as decoded data trailer.

◆ MaxiCodeEncodeMode

Encoding mode for MaxiCode barcodes.

[C#]
//Auto mode
var codetext = "犬Right狗";
using (var generator = new BarcodeGenerator(EncodeTypes.MaxiCode, codetext))
{
generator.Parameters.Barcode.MaxiCode.ECIEncoding = ECIEncodings.UTF8;
generator.Save("test.bmp");
}
//Bytes mode
byte[] encodedArr = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 };
//encode array to string
StringBuilder strBld = new StringBuilder();
foreach (byte bval in encodedArr)
strBld.Append((char) bval);
var codetext = strBld.ToString();
using (var generator = new BarcodeGenerator(EncodeTypes.MaxiCode, codetext))
{
generator.Parameters.Barcode.MaxiCode.MaxiCodeEncodeMode = MaxiCodeEncodeMode.Bytes;
generator.Save("test.bmp");
}
//Extended codetext mode
//create codetext
MaxiCodeExtCodetextBuilder textBuilder = new MaxiCodeExtCodetextBuilder();
textBuilder.AddECICodetext(ECIEncodings.Win1251, "Will");
textBuilder.AddECICodetext(ECIEncodings.UTF8, "犬Right狗");
textBuilder.AddECICodetext(ECIEncodings.UTF16BE, "犬Power狗");
textBuilder.AddPlainCodetext("Plain text");
//generate codetext
string codetext = textBuilder.GetExtendedCodetext();
<br>
//generate
using(BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MaxiCode, codetext))
{
generator.Parameters.Barcode.MaxiCode.MaxiCodeEncodeMode = MaxiCodeEncodeMode.ExtendedCodetext;
generator.Parameters.Barcode.CodeTextParameters.TwoDDisplayText = "My Text";
generator.Save("test.bmp");
}
Enumerator
Auto 

Encode codetext with value set in the ECIEncoding property.

Bytes 

Encode codetext as plain bytes. If it detects any Unicode character, the character will be encoded as two bytes, lower byte first.

ExtendedCodetext 

Extended mode which supports multi ECI modes.

It is better to use MaxiCodeExtCodetextBuilder for extended codetext generation.

Use Display2DText property to set visible text to removing managing characters.

ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier

All unicode characters after ECI identifier are automatically encoded into correct character codeset.

◆ MaxiCodeMode

Encoding mode for MaxiCode barcodes.

This sample shows how to genereate MaxiCode barcodes using ComplexBarcodeGenerator

[C#]
//Mode 2 with standart second message
MaxiCodeCodetextMode2 maxiCodeCodetext = new MaxiCodeCodetextMode2();
maxiCodeCodetext.PostalCode = "524032140";
maxiCodeCodetext.CountryCode = 056;
maxiCodeCodetext.ServiceCategory = 999;
MaxiCodeStandartSecondMessage maxiCodeStandartSecondMessage = new MaxiCodeStandartSecondMessage();
maxiCodeStandartSecondMessage.Message = "Test message";
maxiCodeCodetext.SecondMessage = maxiCodeStandartSecondMessage;
using (ComplexBarcodeGenerator complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext))
{
complexGenerator.GenerateBarCodeImage();
}
//Mode 2 with structured second message
MaxiCodeCodetextMode2 maxiCodeCodetext = new MaxiCodeCodetextMode2();
maxiCodeCodetext.PostalCode = "524032140";
maxiCodeCodetext.CountryCode = 056;
maxiCodeCodetext.ServiceCategory = 999;
MaxiCodeStructuredSecondMessage maxiCodeStructuredSecondMessage = new MaxiCodeStructuredSecondMessage();
maxiCodeStructuredSecondMessage.Add("634 ALPHA DRIVE");
maxiCodeStructuredSecondMessage.Add("PITTSBURGH");
maxiCodeStructuredSecondMessage.Add("PA");
maxiCodeStructuredSecondMessage.Year = 99;
maxiCodeCodetext.SecondMessage = maxiCodeStructuredSecondMessage;
using (ComplexBarcodeGenerator complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext))
{
complexGenerator.GenerateBarCodeImage();
}
//Mode 3 with standart second message
MaxiCodeCodetextMode3 maxiCodeCodetext = new MaxiCodeCodetextMode3();
maxiCodeCodetext.PostalCode = "B1050";
maxiCodeCodetext.CountryCode = 056;
maxiCodeCodetext.ServiceCategory = 999;
MaxiCodeStandartSecondMessage maxiCodeStandartSecondMessage = new MaxiCodeStandartSecondMessage();
maxiCodeStandartSecondMessage.Message = "Test message";
maxiCodeCodetext.SecondMessage = maxiCodeStandartSecondMessage;
using (ComplexBarcodeGenerator complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext))
{
complexGenerator.GenerateBarCodeImage();
}
//Mode 3 with structured second message
MaxiCodeCodetextMode3 maxiCodeCodetext = new MaxiCodeCodetextMode3();
maxiCodeCodetext.PostalCode = "B1050";
maxiCodeCodetext.CountryCode = 056;
maxiCodeCodetext.ServiceCategory = 999;
MaxiCodeStructuredSecondMessage maxiCodeStructuredSecondMessage = new MaxiCodeStructuredSecondMessage();
maxiCodeStructuredSecondMessage.Add("634 ALPHA DRIVE");
maxiCodeStructuredSecondMessage.Add("PITTSBURGH");
maxiCodeStructuredSecondMessage.Add("PA");
maxiCodeStructuredSecondMessage.Year = 99;
maxiCodeCodetext.SecondMessage = maxiCodeStructuredSecondMessage;
using (ComplexBarcodeGenerator complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext.GetConstructedCodetext())
{
complexGenerator.GenerateBarCodeImage();
}
//Mode 4
MaxiCodeStandardCodetext maxiCodeCodetext = new MaxiCodeStandardCodetext();
maxiCodeCodetext.Mode = MaxiCodeMode.Mode4;
maxiCodeCodetext.Message = "Test message";
using (ComplexBarcodeGenerator complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext.GetConstructedCodetext())
{
complexGenerator.GenerateBarCodeImage();
}
//Mode 5
MaxiCodeStandardCodetext maxiCodeCodetext = new MaxiCodeStandardCodetext();
maxiCodeCodetext.Mode = MaxiCodeMode.Mode5;
maxiCodeCodetext.Message = "Test message";
using (ComplexBarcodeGenerator complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext.GetConstructedCodetext())
{
complexGenerator.GenerateBarCodeImage();
}
//Mode 6
MaxiCodeStandardCodetext maxiCodeCodetext = new MaxiCodeStandardCodetext();
maxiCodeCodetext.Mode = MaxiCodeMode.Mode6;
maxiCodeCodetext.Message = "Test message";
using (ComplexBarcodeGenerator complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext.GetConstructedCodetext())
{
complexGenerator.GenerateBarCodeImage();
}
Enumerator
Mode2 

Mode 2 encodes postal information in first message and data in second message. Has 9 digits postal code (used only in USA).

Mode3 

Mode 3 encodes postal information in first message and data in second message. Has 6 alphanumeric postal code, used in the world.

Mode4 

Mode 4 encodes data in first and second message, with short ECC correction.

Mode5 

Mode 5 encodes data in first and second message, with long ECC correction.

Mode6 

Mode 6 encodes data in first and second message, with short ECC correction. Used to encode device.

◆ PatchFormat

PatchCode format. Choose PatchOnly to generate single PatchCode. Use page format to generate Patch page with PatchCodes as borders

Enumerator
PatchOnly 

Generates PatchCode only

A4 

Generates A4 format page with PatchCodes as borders and optional QR in the center

A4_LANDSCAPE 

Generates A4 landscape format page with PatchCodes as borders and optional QR in the center

US_Letter 

Generates US letter format page with PatchCodes as borders and optional QR in the center

US_Letter_LANDSCAPE 

Generates US letter landscape format page with PatchCodes as borders and optional QR in the center

◆ Pdf417CompactionMode

Pdf417 barcode compaction mode

Enumerator
Auto 

auto detect compaction mode

Text 

text compaction

Numeric 

numeric compaction mode

Binary 

binary compaction mode

◆ Pdf417ErrorLevel

pdf417 barcode's error correction level, from level 0 to level 9, level 0 means no error correction, level 9 means best error correction

Enumerator
Level0 

level = 0.

Level1 

level = 1.

Level2 

level = 2.

Level3 

level = 3.

Level4 

level = 4.

Level5 

level = 5.

Level6 

level = 6.

Level7 

level = 7.

Level8 

level = 8.

◆ Pdf417MacroTerminator

Used to tell the encoder whether to add Macro PDF417 Terminator (codeword 922) to the segment. Applied only for Macro PDF417.

Enumerator
Auto 

The terminator will be added automatically if the number of segments is provided and the current segment is the last one. In other cases, the terminator will not be added.

None 

The terminator will not be added.

Set 

The terminator will be added.

◆ QREncodeMode

Encoding mode for QR barcodes. It is recommended to Use Auto with CodeTextEncoding = Encoding.UTF8 for Latin symbols or digits and Utf8BOM for Unicode symbols.

Enumerator
Auto 

Encode codetext as is non-Unicode charset. If there is any Unicode character, the codetext will be encoded with value which is set in CodeTextEncoding.

Bytes 

Encode codetext as plain bytes. If it detects any Unicode character, the character will be encoded as two bytes, lower byte first.

Utf8BOM 

Encode codetext with UTF8 encoding with first ByteOfMark character.

Utf16BEBOM 

Encode codetext with UTF8 encoding with first ByteOfMark character. It can be problems with some barcode scanners.

ECIEncoding 

Encode codetext with value set in the ECIEncoding property. It can be problems with some old (pre 2006) barcode scanners.

This sample shows how to use ECI encoding and save a BarCode image.

[C#]
{
generator.CodeText = "12345TEXT";
generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.ECIEncoding;
generator.Parameters.Barcode.QR.QrEncodeType = QREncodeType.ForceQR;
generator.Parameters.Barcode.QR.QrECIEncoding = ECIEncodings.UTF8;
generator.Save("test.png");
}
[VB.NET]
Using generator As New Aspose.BarCode.Generation.BarcodeGenerator(EncodeTypes.QR)
generator.CodeText = "12345TEXT"
generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.ECIEncoding
generator.Parameters.Barcode.QR.QrEncodeType = QREncodeType.ForceQR
generator.Parameters.Barcode.QR.QrECIEncoding = ECIEncodings.UTF8
generator.Save("test.png")
End Using
ExtendedCodetext 

Extended Channel mode which supports FNC1 first position, FNC1 second position and multi ECI modes.

It is better to use QrExtCodetextBuilder for extended codetext generation.

Use Display2DText property to set visible text to removing managing characters.

Encoding Principles:

All symbols "\" must be doubled "\\" in the codetext.

FNC1 in first position is set in codetext as as "&lt;FNC1&gt;"

FNC1 in second position is set in codetext as as "&lt;FNC1(value)&gt;". The value must be single symbols (a-z, A-Z) or digits from 0 to 99.

Group Separator for FNC1 modes is set as 0x1D character '\u001D'

If you need to insert "&lt;FNC1&gt;" string into barcode write it as "&lt;\FNC1&gt;"

ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier

TO disable current ECI mode and convert to default JIS8 mode zero mode ECI indetifier is set. "\000000"

All unicode characters after ECI identifier are automatically encoded into correct character codeset.

This sample shows how to use FNC1 first position in Extended Mode.

[C#]
//create codetext
QrExtCodetextBuilder textBuilder = new QrExtCodetextBuilder();
textBuilder.AddFNC1FirstPosition();
textBuilder.AddPlainCodetext("000%89%%0");
textBuilder.AddFNC1GroupSeparator();
textBuilder.AddPlainCodetext("12345<FNC1>");
//generate barcode
{
generator.CodeText = textBuilder.GetExtendedCodetext();
generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.ExtendedCodetext;
generator.Parameters.Barcode.CodeTextParameters.TwoDDisplayText = "My Text";
generator.Save(@"d:\test.png");
}
[VB.NET]
'create codetext
Dim textBuilder As New QrExtCodetextBuilder()
textBuilder.AddFNC1FirstPosition()
textBuilder.AddPlainCodetext("000%89%%0")
textBuilder.AddFNC1GroupSeparator()
textBuilder.AddPlainCodetext("12345<FNC1>")
'generate barcode
Using generator As New Aspose.BarCode.Generation.BarcodeGenerator(EncodeTypes.QR)
generator.CodeText = textBuilder.GetExtendedCodetext()
generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.ExtendedCodetext
generator.Parameters.Barcode.CodeTextParameters.TwoDDisplayText = "My Text"
generator.Save("test.png")
End Using

This sample shows how to use FNC1 second position in Extended Mode.

[C#]
//create codetext
QrExtCodetextBuilder textBuilder = new QrExtCodetextBuilder();
textBuilder.AddFNC1SecondPosition("12");
textBuilder.AddPlainCodetext("TRUE3456");
//generate barcode
{
generator.CodeText = textBuilder.GetExtendedCodetext();
generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.ExtendedCodetext;
generator.Parameters.Barcode.CodeTextParameters.TwoDDisplayText = "My Text";
generator.Save(@"d:\test.png");
}
[VB.NET]
'create codetext
Dim textBuilder As New QrExtCodetextBuilder()
textBuilder.AddFNC1SecondPosition("12")
textBuilder.AddPlainCodetext("TRUE3456")
'generate barcode
Using generator As New Aspose.BarCode.Generation.BarcodeGenerator(EncodeTypes.QR)
generator.CodeText = textBuilder.GetExtendedCodetext()
generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.ExtendedCodetext
generator.Parameters.Barcode.CodeTextParameters.TwoDDisplayText = "My Text"
generator.Save("test.png")
End Using
<br>

This sample shows how to use multi ECI mode in Extended Mode.

[C#]
//create codetext
QrExtCodetextBuilder textBuilder = new QrExtCodetextBuilder();
textBuilder.AddECICodetext(ECIEncodings.Win1251, "Will");
textBuilder.AddECICodetext(ECIEncodings.UTF8, "Right");
textBuilder.AddECICodetext(ECIEncodings.UTF16BE, "Power");
textBuilder.AddPlainCodetext(@"t\e\\st");
<br> //generate barcode
{
generator.CodeText = textBuilder.GetExtendedCodetext();
generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.ExtendedCodetext;
generator.Parameters.Barcode.CodeTextParameters.TwoDDisplayText = "My Text";
generator.Save(@"d:\test.png");
}
[VB.NET]
'create codetext
Dim textBuilder As New QrExtCodetextBuilder()
textBuilder.AddECICodetext(ECIEncodings.Win1251, "Will")
textBuilder.AddECICodetext(ECIEncodings.UTF8, "Right")
textBuilder.AddECICodetext(ECIEncodings.UTF16BE, "Power")
textBuilder.AddPlainCodetext(@"t\e\\st")
'generate barcode
Using generator As New Aspose.BarCode.Generation.BarcodeGenerator(EncodeTypes.QR)
generator.CodeText = textBuilder.GetExtendedCodetext()
generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.ExtendedCodetext
generator.Parameters.Barcode.CodeTextParameters.TwoDDisplayText = "My Text"
generator.Save("test.png")
End Using
<br>

◆ QREncodeType

QR / MicroQR selector mode. Select ForceQR for standard QR symbols, Auto for MicroQR. ForceMicroQR is used for strongly MicroQR symbol generation if it is possible.

Enumerator
Auto 

Mode starts barcode version negotiation from MicroQR V1

ForceQR 

Mode starts barcode version negotiation from QR V1

ForceMicroQR 

Mode starts barcode version negotiation from from MicroQR V1 to V4. If data cannot be encoded into MicroQR, exception is thrown.

◆ QRErrorLevel

Level of Reed-Solomon error correction. From low to high: LevelL, LevelM, LevelQ, LevelH.

Enumerator
LevelL 

Allows recovery of 7% of the code text

LevelM 

Allows recovery of 15% of the code text

LevelQ 

Allows recovery of 25% of the code text

LevelH 

Allows recovery of 30% of the code text

◆ QRVersion

Version of QR Code. From Version1 to Version40 for QR code and from M1 to M4 for MicroQr.

Enumerator
Auto 

Specifies to automatically pick up the best version for QR. This is default value.

Version01 

Specifies version 1 with 21 x 21 modules.

Version02 

Specifies version 2 with 25 x 25 modules.

Version03 

Specifies version 3 with 29 x 29 modules.

Version04 

Specifies version 4 with 33 x 33 modules.

Version05 

Specifies version 5 with 37 x 37 modules.

Version06 

Specifies version 6 with 41 x 41 modules.

Version07 

Specifies version 7 with 45 x 45 modules.

Version08 

Specifies version 8 with 49 x 49 modules.

Version09 

Specifies version 9 with 53 x 53 modules.

Version10 

Specifies version 10 with 57 x 57 modules.

Version11 

Specifies version 11 with 61 x 61 modules.

Version12 

Specifies version 12 with 65 x 65 modules.

Version13 

Specifies version 13 with 69 x 69 modules.

Version14 

Specifies version 14 with 73 x 73 modules.

Version15 

Specifies version 15 with 77 x 77 modules.

Version16 

Specifies version 16 with 81 x 81 modules.

Version17 

Specifies version 17 with 85 x 85 modules.

Version18 

Specifies version 18 with 89 x 89 modules.

Version19 

Specifies version 19 with 93 x 93 modules.

Version20 

Specifies version 20 with 97 x 97 modules.

Version21 

Specifies version 21 with 101 x 101 modules.

Version22 

Specifies version 22 with 105 x 105 modules.

Version23 

Specifies version 23 with 109 x 109 modules.

Version24 

Specifies version 24 with 113 x 113 modules.

Version25 

Specifies version 25 with 117 x 117 modules.

Version26 

Specifies version 26 with 121 x 121 modules.

Version27 

Specifies version 27 with 125 x 125 modules.

Version28 

Specifies version 28 with 129 x 129 modules.

Version29 

Specifies version 29 with 133 x 133 modules.

Version30 

Specifies version 30 with 137 x 137 modules.

Version31 

Specifies version 31 with 141 x 141 modules.

Version32 

Specifies version 32 with 145 x 145 modules.

Version33 

Specifies version 33 with 149 x 149 modules.

Version34 

Specifies version 34 with 153 x 153 modules.

Version35 

Specifies version 35 with 157 x 157 modules.

Version36 

Specifies version 36 with 161 x 161 modules.

Version37 

Specifies version 37 with 165 x 165 modules.

Version38 

Specifies version 38 with 169 x 169 modules.

Version39 

Specifies version 39 with 173 x 173 modules.

Version40 

Specifies version 40 with 177 x 177 modules.

VersionM1 

Specifies version M1 for Micro QR with 11 x 11 modules.

VersionM2 

Specifies version M2 for Micro QR with 13 x 13 modules.

VersionM3 

Specifies version M3 for Micro QR with 15 x 15 modules.

VersionM4 

Specifies version M4 for Micro QR with 17 x 17 modules.

◆ TextAlignment

Text alignment.

Enumerator
Left 

Left position.

Center 

Center position.

Right 

Right position.

◆ TwoDComponentType

Type of 2D component

Enumerator
Auto 

Auto select type of 2D component

CC_A 

CC-A type of 2D component. It is a structural variant of MicroPDF417

CC_B 

CC-B type of 2D component. It is a MicroPDF417 symbol.

CC_C 

CC-C type of 2D component. It is a PDF417 symbol.