Aspose::BarCode::Generation Namespace Reference

Namespaces

 ParamsSpecification
 

Classes

class  AustralianPostParameters
 AustralianPost barcode parameters. More...
 
class  AztecExtCodetextBuilder
 
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  Code128Parameters
 Code128 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  DataMatrixExtCodetextBuilder
 
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  HanXinExtCodetextBuilder
 
class  HanXinParameters
 Han Xin parameters. More...
 
class  ImageParameters
 Image 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, MicroPDF417 and GS1MicroPdf417 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  SvgParameters
 SVG parameters. 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  AztecEncodeMode { AztecEncodeMode::Auto, AztecEncodeMode::Bytes, AztecEncodeMode::ExtendedCodetext }
 Encoding mode for Aztec barcodes. 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  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  Code128EncodeMode {
  Code128EncodeMode::Auto = 0, Code128EncodeMode::CodeA = 1, Code128EncodeMode::CodeB = 2, Code128EncodeMode::CodeC = 4,
  Code128EncodeMode::CodeAB = 3, Code128EncodeMode::CodeAC = 5, Code128EncodeMode::CodeBC = 6
}
 Encoding mode for Code128 barcodes. Code 128specification. 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::Bytes = 6, 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  DataMatrixVersion {
  DataMatrixVersion::Auto = 0, DataMatrixVersion::RowsColumns = 1, DataMatrixVersion::ECC000_9x9 = 2, DataMatrixVersion::ECC000_050_11x11 = 3,
  DataMatrixVersion::ECC000_100_13x13 = 4, DataMatrixVersion::ECC000_100_15x15 = 5, DataMatrixVersion::ECC000_140_17x17 = 6, DataMatrixVersion::ECC000_140_19x19 = 7,
  DataMatrixVersion::ECC000_140_21x21 = 8, DataMatrixVersion::ECC000_140_23x23 = 9, DataMatrixVersion::ECC000_140_25x25 = 10, DataMatrixVersion::ECC000_140_27x27 = 11,
  DataMatrixVersion::ECC000_140_29x29 = 12, DataMatrixVersion::ECC000_140_31x31 = 13, DataMatrixVersion::ECC000_140_33x33 = 14, DataMatrixVersion::ECC000_140_35x35 = 15,
  DataMatrixVersion::ECC000_140_37x37 = 16, DataMatrixVersion::ECC000_140_39x39 = 17, DataMatrixVersion::ECC000_140_41x41 = 18, DataMatrixVersion::ECC000_140_43x43 = 19,
  DataMatrixVersion::ECC000_140_45x45 = 20, DataMatrixVersion::ECC000_140_47x47 = 21, DataMatrixVersion::ECC000_140_49x49 = 22, DataMatrixVersion::ECC200_10x10 = 23,
  DataMatrixVersion::ECC200_12x12 = 24, DataMatrixVersion::ECC200_14x14 = 25, DataMatrixVersion::ECC200_16x16 = 26, DataMatrixVersion::ECC200_18x18 = 27,
  DataMatrixVersion::ECC200_20x20 = 28, DataMatrixVersion::ECC200_22x22 = 29, DataMatrixVersion::ECC200_24x24 = 30, DataMatrixVersion::ECC200_26x26 = 31,
  DataMatrixVersion::ECC200_32x32 = 32, DataMatrixVersion::ECC200_36x36 = 33, DataMatrixVersion::ECC200_40x40 = 34, DataMatrixVersion::ECC200_44x44 = 35,
  DataMatrixVersion::ECC200_48x48 = 36, DataMatrixVersion::ECC200_52x52 = 37, DataMatrixVersion::ECC200_64x64 = 38, DataMatrixVersion::ECC200_72x72 = 39,
  DataMatrixVersion::ECC200_80x80 = 40, DataMatrixVersion::ECC200_88x88 = 41, DataMatrixVersion::ECC200_96x96 = 42, DataMatrixVersion::ECC200_104x104 = 43,
  DataMatrixVersion::ECC200_120x120 = 44, DataMatrixVersion::ECC200_132x132 = 45, DataMatrixVersion::ECC200_144x144 = 46, DataMatrixVersion::ECC200_8x18 = 47,
  DataMatrixVersion::ECC200_8x32 = 48, DataMatrixVersion::ECC200_12x26 = 49, DataMatrixVersion::ECC200_12x36 = 50, DataMatrixVersion::ECC200_16x36 = 51,
  DataMatrixVersion::ECC200_16x48 = 52, DataMatrixVersion::DMRE_8x48 = 53, DataMatrixVersion::DMRE_8x64 = 54, DataMatrixVersion::DMRE_8x80 = 55,
  DataMatrixVersion::DMRE_8x96 = 56, DataMatrixVersion::DMRE_8x120 = 57, DataMatrixVersion::DMRE_8x144 = 58, DataMatrixVersion::DMRE_12x64 = 59,
  DataMatrixVersion::DMRE_12x88 = 60, DataMatrixVersion::DMRE_16x64 = 61, DataMatrixVersion::DMRE_20x36 = 62, DataMatrixVersion::DMRE_20x44 = 63,
  DataMatrixVersion::DMRE_20x64 = 64, DataMatrixVersion::DMRE_22x48 = 65, DataMatrixVersion::DMRE_24x48 = 66, DataMatrixVersion::DMRE_24x64 = 67,
  DataMatrixVersion::DMRE_26x40 = 68, DataMatrixVersion::DMRE_26x48 = 69, DataMatrixVersion::DMRE_26x64 = 70
}
 Specify the type of the ECC to encode. 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  HanXinEncodeMode {
  HanXinEncodeMode::Auto = 0, HanXinEncodeMode::Binary = 1, HanXinEncodeMode::ECI = 2, HanXinEncodeMode::Unicode = 3,
  HanXinEncodeMode::URI = 4, HanXinEncodeMode::Extended = 5
}
 Han Xin Code encoding mode. It is recommended to use Auto with ASCII / Chinese characters or Unicode for Unicode characters. More...
 
enum  HanXinErrorLevel { HanXinErrorLevel::L1 = 0, HanXinErrorLevel::L2 = 1, HanXinErrorLevel::L3 = 2, HanXinErrorLevel::L4 = 3 }
 Level of Reed-Solomon error correction. From low to high: L1, L2, L3, L4. More...
 
enum  HanXinVersion {
  HanXinVersion::Auto = 0, HanXinVersion::Version01 = 1, HanXinVersion::Version02 = 2, HanXinVersion::Version03 = 3,
  HanXinVersion::Version04 = 4, HanXinVersion::Version05 = 5, HanXinVersion::Version06 = 6, HanXinVersion::Version07 = 7,
  HanXinVersion::Version08 = 8, HanXinVersion::Version09 = 9, HanXinVersion::Version10 = 10, HanXinVersion::Version11 = 11,
  HanXinVersion::Version12 = 12, HanXinVersion::Version13 = 13, HanXinVersion::Version14 = 14, HanXinVersion::Version15 = 15,
  HanXinVersion::Version16 = 16, HanXinVersion::Version17 = 17, HanXinVersion::Version18 = 18, HanXinVersion::Version19 = 19,
  HanXinVersion::Version20 = 20, HanXinVersion::Version21 = 21, HanXinVersion::Version22 = 22, HanXinVersion::Version23 = 23,
  HanXinVersion::Version24 = 24, HanXinVersion::Version25 = 25, HanXinVersion::Version26 = 26, HanXinVersion::Version27 = 27,
  HanXinVersion::Version28 = 28, HanXinVersion::Version29 = 29, HanXinVersion::Version30 = 30, HanXinVersion::Version31 = 31,
  HanXinVersion::Version32 = 32, HanXinVersion::Version33 = 33, HanXinVersion::Version34 = 34, HanXinVersion::Version35 = 35,
  HanXinVersion::Version36 = 36, HanXinVersion::Version37 = 37, HanXinVersion::Version38 = 38, HanXinVersion::Version39 = 39,
  HanXinVersion::Version40 = 40, HanXinVersion::Version41 = 41, HanXinVersion::Version42 = 42, HanXinVersion::Version43 = 43,
  HanXinVersion::Version44 = 44, HanXinVersion::Version45 = 45, HanXinVersion::Version46 = 46, HanXinVersion::Version47 = 47,
  HanXinVersion::Version48 = 48, HanXinVersion::Version49 = 49, HanXinVersion::Version50 = 50, HanXinVersion::Version51 = 51,
  HanXinVersion::Version52 = 52, HanXinVersion::Version53 = 53, HanXinVersion::Version54 = 54, HanXinVersion::Version55 = 55,
  HanXinVersion::Version56 = 56, HanXinVersion::Version57 = 57, HanXinVersion::Version58 = 58, HanXinVersion::Version59 = 59,
  HanXinVersion::Version60 = 60, HanXinVersion::Version61 = 61, HanXinVersion::Version62 = 62, HanXinVersion::Version63 = 63,
  HanXinVersion::Version64 = 64, HanXinVersion::Version65 = 65, HanXinVersion::Version66 = 66, HanXinVersion::Version67 = 67,
  HanXinVersion::Version68 = 68, HanXinVersion::Version69 = 69, HanXinVersion::Version70 = 70, HanXinVersion::Version71 = 71,
  HanXinVersion::Version72 = 72, HanXinVersion::Version73 = 73, HanXinVersion::Version74 = 74, HanXinVersion::Version75 = 75,
  HanXinVersion::Version76 = 76, HanXinVersion::Version77 = 77, HanXinVersion::Version78 = 78, HanXinVersion::Version79 = 79,
  HanXinVersion::Version80 = 80, HanXinVersion::Version81 = 81, HanXinVersion::Version82 = 82, HanXinVersion::Version83 = 83,
  HanXinVersion::Version84 = 84
}
 Version of Han Xin Code. From Version01 - 23 x 23 modules to Version84 - 189 x 189 modules, increasing in steps of 2 modules per side. More...
 
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  MicroQRVersion {
  MicroQRVersion::Auto, MicroQRVersion::M1, MicroQRVersion::M2, MicroQRVersion::M3,
  MicroQRVersion::M4
}
 Version of MicroQR Code. From M1 to M4. 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 8 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  RectMicroQRVersion {
  RectMicroQRVersion::Auto, RectMicroQRVersion::R7x43, RectMicroQRVersion::R7x59, RectMicroQRVersion::R7x77,
  RectMicroQRVersion::R7x99, RectMicroQRVersion::R7x139, RectMicroQRVersion::R9x43, RectMicroQRVersion::R9x59,
  RectMicroQRVersion::R9x77, RectMicroQRVersion::R9x99, RectMicroQRVersion::R9x139, RectMicroQRVersion::R11x27,
  RectMicroQRVersion::R11x43, RectMicroQRVersion::R11x59, RectMicroQRVersion::R11x77, RectMicroQRVersion::R11x99,
  RectMicroQRVersion::R11x139, RectMicroQRVersion::R13x27, RectMicroQRVersion::R13x43, RectMicroQRVersion::R13x59,
  RectMicroQRVersion::R13x77, RectMicroQRVersion::R13x99, RectMicroQRVersion::R13x139, RectMicroQRVersion::R15x43,
  RectMicroQRVersion::R15x59, RectMicroQRVersion::R15x77, RectMicroQRVersion::R15x99, RectMicroQRVersion::R15x139,
  RectMicroQRVersion::R17x43, RectMicroQRVersion::R17x59, RectMicroQRVersion::R17x77, RectMicroQRVersion::R17x99,
  RectMicroQRVersion::R17x139
}
 Version of RectMicroQR Code. From version R7x43 to version R17x139. More...
 
enum  TextAlignment { TextAlignment::Left = 0, TextAlignment::Center = 1, TextAlignment::Right = 2 }
 Text alignment. More...
 
enum  TwoDComponentType { TwoDComponentType::Auto = 0, TwoDComponentType::CC_A = 1, TwoDComponentType::CC_B = 2, TwoDComponentType::CC_C = 3 }
 Type of 2D component 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.

◆ AztecEncodeMode

Encoding mode for Aztec barcodes.

[C#]
//Auto mode
var codetext = "犬Right狗";
using (var generator = new BarcodeGenerator(EncodeTypes.Aztec, codetext))
{
generator.Parameters.Barcode.Aztec.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.Aztec, codetext))
{
generator.Parameters.Barcode.Aztec.AztecEncodeMode = AztecEncodeMode.Bytes;
generator.Save("test.bmp");
}
//Extended codetext mode
//create codetext
AztecExtCodetextBuilder textBuilder = new AztecExtCodetextBuilder();
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.Aztec, codetext))
{
generator.Parameters.Barcode.Aztec.AztecEncodeMode = AztecEncodeMode.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 AztecExtCodetextBuilder 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.

◆ 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.

◆ Code128EncodeMode

Encoding mode for Code128 barcodes. Code 128specification.

Thos code demonstrates how to generate code 128 with different encodings

[C#]
//Generate code 128 with ISO 15417 encoding
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.Code128, "ABCD1234567890");
generator.Parameters.Barcode.Code128.Code128EncodeMode = Code128EncodeMode.Auto;
generator.Save(@"d:\save\rec\code128Auto.png", BarCodeImageFormat.Png);
//Generate code 128 only with Codeset A encoding
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.Code128, "ABCD1234567890");
generator.Parameters.Barcode.Code128.Code128EncodeMode = Code128EncodeMode.CodeA;
generator.Save(@"d:\save\rec\code128CodeA.png", BarCodeImageFormat.Png);
Enumerator
Auto 

Encode codetext in classic ISO 15417 mode. The mode should be used in all ordinary cases.

CodeA 

Encode codetext only in 128A codeset.

CodeB 

Encode codetext only in 128B codeset.

CodeC 

Encode codetext only in 128C codeset.

CodeAB 

Encode codetext only in 128A and 128B codesets.

CodeAC 

Encode codetext only in 128A and 128C codesets.

CodeBC 

Encode codetext only in 128B and 128C codesets.

◆ 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

This sample shows how to do codetext in Extended Mode.

[C#]
//Auto mode
string codetext = "犬Right狗";
using (var generator = new BarcodeGenerator(EncodeTypes.DataMatrix, codetext))
{
generator.Parameters.Barcode.DataMatrix.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);
string codetext = strBld.ToString();
using (var generator = new BarcodeGenerator(EncodeTypes.DataMatrix, codetext))
{
generator.Parameters.Barcode.DataMatrix.DataMatrixEncodeMode = DataMatrixEncodeMode.Bytes;
generator.Save("test.bmp");
}
//Extended codetext mode
//create codetext
DataMatrixExtCodetextBuilder textBuilder = new DataMatrixExtCodetextBuilder();
codetextBuilder.AddECICodetextWithEncodeMode(ECIEncodings.Win1251, DataMatrixEncodeMode.Bytes, "World");
codetextBuilder.AddPlainCodetext("Will");
codetextBuilder.AddECICodetext(ECIEncodings.UTF8, "犬Right狗");
codetextBuilder.AddCodetextWithEncodeMode(DataMatrixEncodeMode.C40, "ABCDE");
//generate codetext
string codetext = textBuilder.GetExtendedCodetext();
<br>
//generate
using(BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.DataMatrix, codetext))
{
generator.Parameters.Barcode.DataMatrix.DataMatrixEncodeMode = DataMatrixEncodeMode.ExtendedCodetext;
generator.Save("test.bmp");
}
Enumerator
Auto 

Automatically pick up the best encode mode for Datamatrix encoding

ASCII 

Encodes one alphanumeric or two numeric characters per byte

Bytes 

Encode 8 bit values

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 and ECI encodings in codetext.

It is better to use DataMatrixExtCodetextBuilder 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.

Encodation schemes are set in the next format : "\Encodation_scheme_name:text\Encodation_scheme_name:text".

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

All backslashes () must be doubled in text.

◆ DataMatrixVersion

Specify the type of the ECC to encode.

Enumerator
Auto 

Specifies to automatically pick up the smallest size for DataMatrix. This is default value.

RowsColumns 

Instructs to get symbol sizes from Rows And Columns parameters. Note that DataMatrix does not support custom rows and columns numbers. This option is not recommended to use.

ECC000_9x9 

Specifies size of 9 x 9 modules for ECC000 type.

ECC000_050_11x11 

Specifies size of 11 x 11 modules for ECC000-ECC050 types.

ECC000_100_13x13 

Specifies size of 13 x 13 modules for ECC000-ECC100 types.

ECC000_100_15x15 

Specifies size of 15 x 15 modules for ECC000-ECC100 types.

ECC000_140_17x17 

Specifies size of 17 x 17 modules for ECC000-ECC140 types.

ECC000_140_19x19 

Specifies size of 19 x 19 modules for ECC000-ECC140 types.

ECC000_140_21x21 

Specifies size of 21 x 21 modules for ECC000-ECC140 types.

ECC000_140_23x23 

Specifies size of 23 x 23 modules for ECC000-ECC140 types.

ECC000_140_25x25 

Specifies size of 25 x 25 modules for ECC000-ECC140 types.

ECC000_140_27x27 

Specifies size of 27 x 27 modules for ECC000-ECC140 types.

ECC000_140_29x29 

Specifies size of 29 x 29 modules for ECC000-ECC140 types.

ECC000_140_31x31 

Specifies size of 31 x 31 modules for ECC000-ECC140 types.

ECC000_140_33x33 

Specifies size of 33 x 33 modules for ECC000-ECC140 types.

ECC000_140_35x35 

Specifies size of 35 x 35 modules for ECC000-ECC140 types.

ECC000_140_37x37 

Specifies size of 37 x 37 modules for ECC000-ECC140 types.

ECC000_140_39x39 

Specifies size of 39 x 39 modules for ECC000-ECC140 types.

ECC000_140_41x41 

Specifies size of 41 x 41 modules for ECC000-ECC140 types.

ECC000_140_43x43 

Specifies size of 43 x 43 modules for ECC000-ECC140 types.

ECC000_140_45x45 

Specifies size of 45 x 45 modules for ECC000-ECC140 types.

ECC000_140_47x47 

Specifies size of 47 x 47 modules for ECC000-ECC140 types.

ECC000_140_49x49 

Specifies size of 49 x 49 modules for ECC000-ECC140 types.

ECC200_10x10 

Specifies size of 10 x 10 modules for ECC200 type.

ECC200_12x12 

Specifies size of 12 x 12 modules for ECC200 type.

ECC200_14x14 

Specifies size of 14 x 14 modules for ECC200 type.

ECC200_16x16 

Specifies size of 16 x 16 modules for ECC200 type.

ECC200_18x18 

Specifies size of 18 x 18 modules for ECC200 type.

ECC200_20x20 

Specifies size of 20 x 20 modules for ECC200 type.

ECC200_22x22 

Specifies size of 22 x 22 modules for ECC200 type.

ECC200_24x24 

Specifies size of 24 x 24 modules for ECC200 type.

ECC200_26x26 

Specifies size of 26 x 26 modules for ECC200 type.

ECC200_32x32 

Specifies size of 32 x 32 modules for ECC200 type.

ECC200_36x36 

Specifies size of 36 x 36 modules for ECC200 type.

ECC200_40x40 

Specifies size of 40 x 40 modules for ECC200 type.

ECC200_44x44 

Specifies size of 44 x 44 modules for ECC200 type.

ECC200_48x48 

Specifies size of 48 x 48 modules for ECC200 type.

ECC200_52x52 

Specifies size of 52 x 52 modules for ECC200 type.

ECC200_64x64 

Specifies size of 64 x 64 modules for ECC200 type.

ECC200_72x72 

Specifies size of 72 x 72 modules for ECC200 type.

ECC200_80x80 

Specifies size of 80 x 80 modules for ECC200 type.

ECC200_88x88 

Specifies size of 88 x 88 modules for ECC200 type.

ECC200_96x96 

Specifies size of 96 x 96 modules for ECC200 type.

ECC200_104x104 

Specifies size of 104 x 104 modules for ECC200 type.

ECC200_120x120 

Specifies size of 120 x 120 modules for ECC200 type.

ECC200_132x132 

Specifies size of 132 x 132 modules for ECC200 type.

ECC200_144x144 

Specifies size of 144 x 144 modules for ECC200 type.

ECC200_8x18 

Specifies size of 8 x 18 modules for ECC200 type.

ECC200_8x32 

Specifies size of 8 x 32 modules for ECC200 type.

ECC200_12x26 

Specifies size of 12 x 26 modules for ECC200 type.

ECC200_12x36 

Specifies size of 12 x 36 modules for ECC200 type.

ECC200_16x36 

Specifies size of 16 x 36 modules for ECC200 type.

ECC200_16x48 

Specifies size of 16 x 48 modules for ECC200 type.

DMRE_8x48 

Specifies size of 8 x 48 modules for DMRE barcodes.

DMRE_8x64 

Specifies size of 8 x 64 modules for DMRE barcodes.

DMRE_8x80 

Specifies size of 8 x 80 modules for DMRE barcodes.

DMRE_8x96 

Specifies size of 8 x 96 modules for DMRE barcodes.

DMRE_8x120 

Specifies size of 8 x 120 modules for DMRE barcodes.

DMRE_8x144 

Specifies size of 8 x 144 modules for DMRE barcodes.

DMRE_12x64 

Specifies size of 12 x 64 modules for DMRE barcodes.

DMRE_12x88 

Specifies size of 12 x 88 modules for DMRE barcodes.

DMRE_16x64 

Specifies size of 16 x 64 modules for DMRE barcodes.

DMRE_20x36 

Specifies size of 20 x 36 modules for DMRE barcodes.

DMRE_20x44 

Specifies size of 20 x 44 modules for DMRE barcodes.

DMRE_20x64 

Specifies size of 20 x 64 modules for DMRE barcodes.

DMRE_22x48 

Specifies size of 22 x 48 modules for DMRE barcodes.

DMRE_24x48 

Specifies size of 24 x 48 modules for DMRE barcodes.

DMRE_24x64 

Specifies size of 24 x 64 modules for DMRE barcodes.

DMRE_26x40 

Specifies size of 26 x 40 modules for DMRE barcodes.

DMRE_26x48 

Specifies size of 26 x 48 modules for DMRE barcodes.

DMRE_26x64 

Specifies size of 26 x 64 modules for DMRE barcodes.

◆ 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.

◆ HanXinEncodeMode

Han Xin Code encoding mode. It is recommended to use Auto with ASCII / Chinese characters or Unicode for Unicode characters.

[C#]
// Auto mode
var codetext = "1234567890ABCDEFGabcdefg,Han Xin Code";
using (var generator = new BarcodeGenerator(EncodeTypes.HanXin, codetext))
{
generator.Save("test.bmp");
}
// Binary 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.HanXin, codetext))
{
generator.Parameters.Barcode.HanXin.HanXinEncodeMode = HanXinEncodeMode.Binary;
generator.Save("test.bmp");
}
// ECI mode
var codetext = "ΑΒΓΔΕ";
using (var generator = new BarcodeGenerator(EncodeTypes.HanXin, codetext))
{
generator.Parameters.Barcode.HanXin.HanXinEncodeMode = HanXinEncodeMode.ECI;
generator.Parameters.Barcode.HanXin.HanXinECIEncoding = ECIEncodings.ISO_8859_7;
generator.Save("test.bmp");
}
// Unicode mode
var codetext = "abcd АБВ ıntəˈnæʃənəl テスト 안녕하세요 테스트 테스트";
using (var generator = new BarcodeGenerator(EncodeTypes.HanXin, codetext))
{
generator.Parameters.Barcode.HanXin.HanXinEncodeMode = HanXinEncodeMode.Unicode;
generator.Save("test.bmp");
}
// URI mode
var codetext = "https://www.test.com/%BC%DE%%%ab/search=test";
using (var generator = new BarcodeGenerator(EncodeTypes.HanXin, codetext))
{
generator.Parameters.Barcode.HanXin.HanXinEncodeMode = HanXinEncodeMode.URI;
generator.Save("test.bmp");
}
// Extended mode
var str = @"\gb180302b:漄\gb180304b:㐁\region1:全\region2:螅\numeric:123\text:qwe\unicode:ıntəˈnæʃənəl" +
@"\000009:ΑΒΓΔΕ\auto:abc\binary:abc\uri:backslashes_should_be_doubled\\000555:test";
var expectedStr = @"漄㐁全螅123qweıntəˈnæʃənəlΑΒΓΔΕabcabcbackslashes_should_be_doubled\000555:test";
using (var generator = new BarcodeGenerator(EncodeTypes.HanXin, str))
{
generator.Parameters.Barcode.HanXin.HanXinEncodeMode = HanXinEncodeMode.Extended;
generator.Save("test.bmp");
}
// Using HanXinExtCodetextBuilder for Extended mode (same codetext as in previous example)
//create codetext
var codeTextBuilder = new HanXinExtCodetextBuilder();
codeTextBuilder.AddGB18030TwoByte("漄");
codeTextBuilder.AddGB18030FourByte("㐁");
codeTextBuilder.AddCommonChineseRegionOne("全");
codeTextBuilder.AddCommonChineseRegionTwo("螅");
codeTextBuilder.AddNumeric("123");
codeTextBuilder.AddText("qwe");
codeTextBuilder.AddUnicode("ıntəˈnæʃənəl");
codeTextBuilder.AddECI("ΑΒΓΔΕ", 9);
codeTextBuilder.AddAuto("abc");
codeTextBuilder.AddBinary("abc");
codeTextBuilder.AddURI(@"backslashes_should_be_doubled\000555:test");
var expectedStr = @"漄㐁全螅123qweıntəˈnæʃənəlΑΒΓΔΕabcabcbackslashes_should_be_doubled\000555:test";
//generate codetext
var str = codeTextBuilder.GetExtendedCodetext();
//generate
using (var generator = new BarcodeGenerator(EncodeTypes.HanXin, str))
{
generator.Parameters.Barcode.HanXin.HanXinEncodeMode = HanXinEncodeMode.Extended;
generator.Save("test.bmp");
}
Enumerator
Auto 

Sequence of Numeric, Text, ECI, Binary Bytes and 4 GB18030 modes changing automatically.

Binary 

Binary byte mode encodes binary data in any form and encodes them in their binary byte. Every byte in Binary Byte mode is represented by 8 bits.

ECI 

Extended Channel Interpretation (ECI) mode

Unicode 

Unicode mode designs a way to represent any text data reference to UTF8 encoding/charset in Han Xin Code.

URI 

URI mode indicates the data represented in Han Xin Code is Uniform Resource Identifier (URI) reference to RFC 3986.

Extended 

Extended mode allow combinations of internal modes: Auto, Binary, Text, Numeric, URI, Unicode, ECI, Common Chinese Region One, Common Chinese Region Two, GB18030 Two Byte, GB18030 Four Byte. Codetext can be built manually with prefixes and doubled backslashes, e.g.: ":abc\000009:ΑΒΓΔΕ:ab\c" or using the HanXinExtCodetextBuilder. If the codetext contains an ECI fragment, then only the following modes can be in that codetext after ECI fragment: Auto, Binary, Text, Numeric, URI, ECI.

◆ HanXinErrorLevel

Level of Reed-Solomon error correction. From low to high: L1, L2, L3, L4.

Enumerator
L1 

Allows recovery of 8% of the code text

L2 

Allows recovery of 15% of the code text

L3 

Allows recovery of 23% of the code text

L4 

Allows recovery of 30% of the code text

◆ HanXinVersion

Version of Han Xin Code. From Version01 - 23 x 23 modules to Version84 - 189 x 189 modules, increasing in steps of 2 modules per side.

Enumerator
Auto 

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

Version01 

Specifies version 1 with 23 x 23 modules.

Version02 

Specifies version 2 with 25 x 25 modules.

Version03 

Specifies version 3 with 27 x 27 modules.

Version04 

Specifies version 4 with 29 x 29 modules.

Version05 

Specifies version 5 with 31 x 31 modules.

Version06 

Specifies version 6 with 33 x 33 modules.

Version07 

Specifies version 7 with 35 x 35 modules.

Version08 

Specifies version 8 with 37 x 37 modules.

Version09 

Specifies version 9 with 39 x 39 modules.

Version10 

Specifies version 10 with 41 x 41 modules.

Version11 

Specifies version 11 with 43 x 43 modules.

Version12 

Specifies version 12 with 45 x 45 modules.

Version13 

Specifies version 13 with 47 x 47 modules.

Version14 

Specifies version 14 with 49 x 49 modules.

Version15 

Specifies version 15 with 51 x 51 modules.

Version16 

Specifies version 16 with 53 x 53 modules.

Version17 

Specifies version 17 with 55 x 55 modules.

Version18 

Specifies version 18 with 57 x 57 modules.

Version19 

Specifies version 19 with 59 x 59 modules.

Version20 

Specifies version 20 with 61 x 61 modules.

Version21 

Specifies version 21 with 63 x 63 modules.

Version22 

Specifies version 22 with 65 x 65 modules.

Version23 

Specifies version 23 with 67 x 67 modules.

Version24 

Specifies version 24 with 69 x 69 modules.

Version25 

Specifies version 25 with 71 x 71 modules.

Version26 

Specifies version 26 with 73 x 73 modules.

Version27 

Specifies version 27 with 75 x 75 modules.

Version28 

Specifies version 28 with 77 x 77 modules.

Version29 

Specifies version 29 with 79 x 79 modules.

Version30 

Specifies version 30 with 81 x 81 modules.

Version31 

Specifies version 31 with 83 x 83 modules.

Version32 

Specifies version 32 with 85 x 85 modules.

Version33 

Specifies version 33 with 87 x 87 modules.

Version34 

Specifies version 34 with 89 x 89 modules.

Version35 

Specifies version 35 with 91 x 91 modules.

Version36 

Specifies version 36 with 93 x 93 modules.

Version37 

Specifies version 37 with 95 x 95 modules.

Version38 

Specifies version 38 with 97 x 97 modules.

Version39 

Specifies version 39 with 99 x 99 modules.

Version40 

Specifies version 40 with 101 x 101 modules.

Version41 

Specifies version 41 with 103 x 103 modules.

Version42 

Specifies version 42 with 105 x 105 modules.

Version43 

Specifies version 43 with 107 x 107 modules.

Version44 

Specifies version 44 with 109 x 109 modules.

Version45 

Specifies version 45 with 111 x 111 modules.

Version46 

Specifies version 46 with 113 x 113 modules.

Version47 

Specifies version 47 with 115 x 115 modules.

Version48 

Specifies version 48 with 117 x 117 modules.

Version49 

Specifies version 49 with 119 x 119 modules.

Version50 

Specifies version 50 with 121 x 121 modules.

Version51 

Specifies version 51 with 123 x 123 modules.

Version52 

Specifies version 52 with 125 x 125 modules.

Version53 

Specifies version 53 with 127 x 127 modules.

Version54 

Specifies version 54 with 129 x 129 modules.

Version55 

Specifies version 55 with 131 x 131 modules.

Version56 

Specifies version 56 with 133 x 133 modules.

Version57 

Specifies version 57 with 135 x 135 modules.

Version58 

Specifies version 58 with 137 x 137 modules.

Version59 

Specifies version 59 with 139 x 139 modules.

Version60 

Specifies version 60 with 141 x 141 modules.

Version61 

Specifies version 61 with 143 x 143 modules.

Version62 

Specifies version 62 with 145 x 145 modules.

Version63 

Specifies version 63 with 147 x 147 modules.

Version64 

Specifies version 64 with 149 x 149 modules.

Version65 

Specifies version 65 with 151 x 151 modules.

Version66 

Specifies version 66 with 153 x 153 modules.

Version67 

Specifies version 67 with 155 x 155 modules.

Version68 

Specifies version 68 with 157 x 157 modules.

Version69 

Specifies version 69 with 159 x 159 modules.

Version70 

Specifies version 70 with 161 x 161 modules.

Version71 

Specifies version 71 with 163 x 163 modules.

Version72 

Specifies version 72 with 165 x 165 modules.

Version73 

Specifies version 73 with 167 x 167 modules.

Version74 

Specifies version 74 with 169 x 169 modules.

Version75 

Specifies version 75 with 171 x 171 modules.

Version76 

Specifies version 76 with 173 x 173 modules.

Version77 

Specifies version 77 with 175 x 175 modules.

Version78 

Specifies version 78 with 177 x 177 modules.

Version79 

Specifies version 79 with 179 x 179 modules.

Version80 

Specifies version 80 with 181 x 181 modules.

Version81 

Specifies version 81 with 183 x 183 modules.

Version82 

Specifies version 82 with 185 x 185 modules.

Version83 

Specifies version 83 with 187 x 187 modules.

Version84 

Specifies version 84 with 189 x 189 modules.

◆ 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.

hese samples show how to encode Macro Characters in MicroPdf417 and DataMatrix

[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);
//Encodes MicroPdf417 with 05 Macro the string: "[)>\u001E05\u001Dabcde1234\u001E\u0004"
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "abcde1234");
generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05;
using (BarCodeReader reader = new BarCodeReader(generator.GenerateBarCodeImage(), DecodeType.MicroPdf417))
foreach (BarCodeResult result in reader.ReadBarCodes())
Console.WriteLine(result.CodeText);
//Encodes MicroPdf417 with 06 Macro the string: "[)>\u001E06\u001Dabcde1234\u001E\u0004"
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "abcde1234");
generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06;
using (BarCodeReader reader = new BarCodeReader(generator.GenerateBarCodeImage(), DecodeType.MicroPdf417))
foreach (BarCodeResult result in reader.ReadBarCodes())
Console.WriteLine(result.CodeText);
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.

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.

◆ MicroQRVersion

Version of MicroQR Code. From M1 to M4.

Enumerator
Auto 

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

M1 

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

M2 

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

M3 

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

M4 

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

◆ 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 8 means best error correction

Enumerator
Level0 

Error Correction Level - 0. Error Correction Codewords - 2.

Level1 

Error Correction Level - 1. Error Correction Codewords - 4.

Level2 

Error Correction Level - 2. Error Correction Codewords - 8.

Level3 

Error Correction Level - 3. Error Correction Codewords - 16.

Level4 

Error Correction Level - 4. Error Correction Codewords - 32.

Level5 

Error Correction Level - 5. Error Correction Codewords - 64.

Level6 

Error Correction Level - 6. Error Correction Codewords - 128.

Level7 

Error Correction Level - 7. Error Correction Codewords - 256.

Level8 

Error Correction Level - 8. Error Correction Codewords - 512.

◆ 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.

These samples show how to encode and save QR barcode with extended data formats.

//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
//This sample shows how to use FNC1 first position in Extended Mode.
//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 "<FNC1>"
//FNC1 in second position is set in codetext as as "<FNC1(value)>". 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 "<FNC1>" string into barcode write it as "<\FNC1>"
//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.
[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
//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>
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 mode is not supported by MicroQR barcodes.

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 mode is not supported by MicroQR barcodes.

◆ 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 

Error correction Level L can by applied to QR and MicroQR barcodes. Allows recovery of 7% of the code text.

LevelM 

Error correction Level M can be applied to QR barcodes, RectMicroQR barcodes and MicroQR barcodes with versions from M2 to M4. Allows recovery of 15% of the code text

LevelQ 

Error correction Level Q can be applied to QR barcodes and MicroQR barcodes with version M4. Allows recovery of 25% of the code text

LevelH 

Error correction Level H can be applied to QR and RectMicroQR barcodes. 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.

Deprecated:
This option is obsolete and will be removed in future releases. It is recommended to use separate MicroQR barcode type with MicroQRVersion parameter. False
VersionM2 

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

Deprecated:
This option is obsolete and will be removed in future releases. It is recommended to use separate MicroQR barcode type with MicroQRVersion parameter. False
VersionM3 

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

Deprecated:
This option is obsolete and will be removed in future releases. It is recommended to use separate MicroQR barcode type with MicroQRVersion parameter. False
VersionM4 

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

Deprecated:
This option is obsolete and will be removed in future releases. It is recommended to use separate MicroQR barcode type with MicroQRVersion parameter. False

◆ RectMicroQRVersion

Version of RectMicroQR Code. From version R7x43 to version R17x139.

Enumerator
Auto 

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

R7x43 

Specifies version with 7 x 43 modules.

R7x59 

Specifies version with 7 x 59 modules.

R7x77 

Specifies version with 7 x 77 modules.

R7x99 

Specifies version with 7 x 99 modules.

R7x139 

Specifies version with 7 x 139 modules.

R9x43 

Specifies version with 9 x 43 modules.

R9x59 

Specifies version with 9 x 59 modules.

R9x77 

Specifies version with 9 x 77 modules.

R9x99 

Specifies version with 9 x 99 modules.

R9x139 

Specifies version with 9 x 139 modules.

R11x27 

Specifies version with 11 x 27 modules.

R11x43 

Specifies version with 11 x 43 modules.

R11x59 

Specifies version with 11 x 59 modules.

R11x77 

Specifies version with 11 x 77 modules.

R11x99 

Specifies version with 11 x 99 modules.

R11x139 

Specifies version with 11 x 139 modules.

R13x27 

Specifies version with 13 x 27 modules.

R13x43 

Specifies version with 13 x 43 modules.

R13x59 

Specifies version with 13 x 59 modules.

R13x77 

Specifies version with 13 x 77 modules.

R13x99 

Specifies version with 13 x 99 modules.

R13x139 

Specifies version with 13 x 139 modules.

R15x43 

Specifies version with 15 x 43 modules.

R15x59 

Specifies version with 15 x 59 modules.

R15x77 

Specifies version with 15 x 77 modules.

R15x99 

Specifies version with 15 x 99 modules.

R15x139 

Specifies version with 15 x 139 modules.

R17x43 

Specifies version with 17 x 43 modules.

R17x59 

Specifies version with 17 x 59 modules.

R17x77 

Specifies version with 17 x 77 modules.

R17x99 

Specifies version with 17 x 99 modules.

R17x139 

Specifies version with 17 x 139 modules.

◆ TextAlignment

Text alignment.

Enumerator
Left 

Left position.

Center 

Center position.

Right 

Right position.

◆ TwoDComponentType

Type of 2D component

This sample shows how to create and save a GS1 Composite Bar image. Note that 1D codetext and 2D codetext are separated by symbol '/'

[C#]
var codetext = "(01)03212345678906/(21)A1B2C3D4E5F6G7H8";
using (var generator = new BarcodeGenerator(EncodeTypes.GS1CompositeBar, codetext))
{
generator.Parameters.Barcode.GS1CompositeBar.LinearComponentType = EncodeTypes.GS1Code128;
generator.Parameters.Barcode.GS1CompositeBar.TwoDComponentType = TwoDComponentType.CC_A;
// Aspect ratio of 2D component
generator.Parameters.Barcode.Pdf417.AspectRatio = 3;
// X-Dimension of 1D and 2D components
generator.Parameters.Barcode.XDimension.Pixels = 3;
// Height of 1D component
generator.Parameters.Barcode.BarHeight.Pixels = 100;
generator.Save("test.png");
}
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.