Aspose.BarCode for Reporting Services 16.10 Release Notes

Features and Improvements

KeySummaryCategory
BARCODENET-36297Support to generate Code128C coded barcodeNew Feature
BARCODENET-36259Add new BarCode type: Aztec RunesNew Feature
BARCODENET-36262Implement Aztec Runes generatorNew Feature
BARCODENET-36300Dynabic.Metered IntegrationNew Feature
BARCODENET-36287Support for GS1-128 AI 8102 Coupon Extended BarcodeNew Feature
BARCODENET-36324Support for UPCA & GS1 Databar couponNew Feature
BARCODENET-36332Set Wide Narrow Ratio for barcode symbology : Code128New Feature
BARCODENET-36308The empty hexes for MaxiCode (barcode builder)Enhancement
BARCODENET-36272Generate empty picture with incorrect codetext for AztecEnhancement
BARCODENET-36292Update AustraliaPost generatorEnhancement
BARCODENET-36303Update API for generating CMYK filesEnhancement
BARCODENET-36336Barcode generated using Aspose.BarCode after printing is unable to recognized by laser scannerEnhancement
BARCODENET-36335Generating QR barcode with custom height and width (GraphicsUnit: Inches, Pixel, Millimeter) is not working properlyEnhancement

Usage examples:

BARCODENET-36297 - Support to generate Code128C coded barcode Code sample:

The following snippet of code describes how to generate the Code128A, Code128B, Code128C based on the Code Text provided.

 BarCodeBuilder bb = new BarCodeBuilder ("0123456789", Symbology.Code128);

// Save the image

bb.Save (@"Barcode_Issue36297_Code128C.png");

bb = new BarCodeBuilder ("AAA0123456789zzzzz", Symbology.Code128);

// Save the image

bb.Save (@"Barcode_Issue36297_Code128B.png");


bb = new BarCodeBuilder (@"AAA\t\r\n0123456789\t\r\nZZZ", Symbology.Code128);

// Save the image

bb.Save (@"Barcode_Issue36297_Code128A.png");

BARCODENET-36259 - Add new BarCode type: Aztec Runes Sample generation code:

 BarCodeBuilder b = new BarCodeBuilder();

b.CodeText = "25";

b.SymbologyType = Symbology.Aztec;

b.AztecSymbolMode = AztecSymbolMode.Rune;

b.BarCodeImage.Save("testRune25.png");

BARCODENET-36262 - Implement Aztec Runes generator Sample generation code:

 BarCodeBuilder b = new BarCodeBuilder();

b.CodeText = "25";

b.SymbologyType = Symbology.Aztec;

b.AztecSymbolMode = AztecSymbolMode.Rune;

b.BarCodeImage.Save("testRune25.png");

BARCODENET-36308 - The empty hexes for MaxiCode (barcode builder) Code sample:

 BarCodeBuilder builder = new BarCodeBuilder("111", Symbology.MaxiCode);

builder.GraphicsUnit = GraphicsUnit.Millimeter;

builder.xDimension = 0.22f;

builder.Resolution = new Resolution(72, 72, ResolutionMode.Customized);

Bitmap image1 = builder.GenerateBarCodeImage();

image1.Save("barcode.png", System.Drawing.Imaging.ImageFormat.Png);

Result:

 Aspose.BarCode.BarCodeException :

Size of barcode is too small.

Please, increase the xDimension or resolution.

Code sample for correct generation:

 BarCodeBuilder builder = new BarCodeBuilder("111", Symbology.MaxiCode);

builder.GraphicsUnit = GraphicsUnit.Millimeter;

builder.xDimension = 3;

Bitmap image1 = builder.GenerateBarCodeImage();

image1.Save("barcode.png", System.Drawing.Imaging.ImageFormat.Png);

BARCODENET-36272 - Generate empty picture with incorrect codetext for Aztec

Sample 1. With correct codetext with 3067 characters:

 BarCodeBuilder b = new BarCodeBuilder();

b.CodeText = new string('A', 3067);

b.SymbologyType = Symbology.Aztec;

b.BarCodeImage.Save("maximumText.png");

Sample 2. With incorrect codetext (over limit) - 3068 characters:

 BarCodeBuilder b = new BarCodeBuilder();

b.CodeText = new string('A', 3068);

b.SymbologyType = Symbology.Aztec;

b.BarCodeImage.Save("maximumText.png");

Result:

 throws InvalidCodeException.

BARCODENET-36292 - Update AustraliaPost generator Added support new encodings for Customer Infomation Field in AustraliaPost builder. New propery CustomerInformationInterpretingType was added to BarCodeBuilder class.

Code sample for generating Standard Customer Barcode:

 BarCodeBuilder b = new BarCodeBuilder();

b.CodeText = "1112345678";

b.SymbologyType = Symbology.AustraliaPost;

b.BarCodeImage.Save("australiapost_new.png");

Code sample for generating barcode in Customer Barcode 2 format with N Encoding Table:

 BarCodeBuilder b = new BarCodeBuilder();

b.CodeText = "5912345678123456";

b.SymbologyType = Symbology.AustraliaPost;

b.CustomerInformationInterpretingType = CustomerInformationInterpretingType.NTable;

b.BarCodeImage.Save("australiapost_NTable.png");

Code sample for generating barcode in Customer Barcode 3 format with C Encoding Table:

 BarCodeBuilder b = new BarCodeBuilder();

b.CodeText = "6212345678ABCdef123#";

b.SymbologyType = Symbology.AustraliaPost;

b.CustomerInformationInterpretingType = CustomerInformationInterpretingType.CTable;

b.BarCodeImage.Save("australiapost_CTable.png");

Code sample for generating barcode in Customer Barcode 2 format with raw data (‘0’, ‘1’, ‘2’ or ‘3’ symbol in Customer Information Field):

 BarCodeBuilder b = new BarCodeBuilder();

b.CodeText = "59123456780123012301230123";

b.SymbologyType = Symbology.AustraliaPost;

b.CustomerInformationInterpretingType = CustomerInformationInterpretingType.Other;

b.BarCodeImage.Save("australiapost_Other.png");

BARCODENET-36303 - Update API for generating CMYK files

New public value TiffInCmyk has been added to the BarCodeImageFormat for saving CMYK pictures in standard Save method.

Code sample:

 BarCodeBuilder barcode = new BarCodeBuilder("1234567890", Symbology.Code39Standard);

barcode.Save("code39Standard_in_cmyk.tiff", BarCodeImageFormat.TiffInCmyk);

Code sample with parameters:

 BarCodeBuilder barcode = new BarCodeBuilder("1234567890", Symbology.QR);

barcode.Resolution.DpiX = 200;

barcode.ForeColor = Color.Blue;

barcode.CodeTextColor = Color.Red;

barcode.BackColor = Color.LightPink;

barcode.Save("qr_in_cmyk.tiff", BarCodeImageFormat.TiffInCmyk);

New public value Emf has been added to the BarCodeImageFormat for saving Enhanced Metafile (EMF) pictures in standard Save method.

Code sample:

 BarCodeBuilder barcode = new BarCodeBuilder("1234567890", Symbology.Code39Standard);

barcode.Save("code39Standard.emf", BarCodeImageFormat.Emf);

BARCODENET-36300 - Dynabic.Metered Integration New class Metered has been added in order to provide the set of methods to apply metered key. In this example, an attempt will be made to set metered public and private key

 Metered matered = new Metered();

matered.SetMeteredKey("PublicKey", "PrivateKey");

BARCODENET-36287 Support for GS1-128 AI 8102 Coupon Extended Barcode Code sample

 BarCodeBuilder barCodeBuilder = new BarCodeBuilder();

barCodeBuilder.SymbologyType = Symbology.UpcaGs1Code128Coupon;

// upca part is "514141100906", GS1Code128 part is "(8102)03"

barCodeBuilder.CodeText = "514141100906(8102)03";

barCodeBuilder.Save("UpcaGs1Code128Coupon.png");

BARCODENET-36324 Support for UPCA & GS1 Databar coupon Code sample

 BarCodeBuilder barCodeBuilder = new BarCodeBuilder();

// upca part is "514141100906", GS1Databar part is "(8110)001234502239811110555"

barCodeBuilder.CodeText = "512345678900(8110)001234502239811110555";

barCodeBuilder.SymbologyType = Symbology.UpcaGs1DatabarCoupon;

barCodeBuilder.CaptionAbove.Text = "012345-022398";

barCodeBuilder.Save("couponUpcaDatabar.png");

BARCODENET-36332 Set Wide Narrow Ratio for barcode symbology Code sample:

 BarCodeBuilder barCodeBuilder = new BarCodeBuilder("blackReduction", Symbology.Code128);

barCodeBuilder.xDimension = 1.2f;

barCodeBuilder.BarWidthReduction = 0.2f;

barCodeBuilder.Save("blackReduction.png");

BARCODENET-36336 Barcode generated using Aspose.BarCode after printing is unable to recognized by laser scanner Code sample:

 BarCodeBuilder barCodeBuilder = new BarCodeBuilder();

barCodeBuilder.CodeText = "15-11-48-02-1386";

barCodeBuilder.SymbologyType = Symbology.Code93Standard;

barCodeBuilder.Save("Code93ChecksumFix.png");

BARCODENET-36335 Generating QR barcode with custom height and width (GraphicsUnit: Inches, Pixel, Millimeter) is not working properly Code sample:

 BarCodeBuilder builder = new BarCodeBuilder();

builder.SymbologyType = Symbology.QR;

builder.CodeText = ("123456789");

builder.CodeLocation=(CodeLocation.None);

builder.QRErrorLevel=(QRErrorLevel.LevelH);

builder.GraphicsUnit=(GraphicsUnit.Inch);

builder.Margins = new MarginsF(0,0,0,0);

float imageWidth = 2.5f;

float imageHeight = 2.5f;

builder.GetCustomSizeBarCodeImage(imageWidth, imageHeight, false).Save("customSize.png");