CalculateBarcodeDataBounds Method (original) (raw)
Summary
Calculates the exact pixel size required to write the specified barcode.
Syntax
C#
Objective-C
C++/CLI
Java
Python
- (BOOL)calculateBarcodeDataBounds:(LeadRect)writeBounds xResolution:(NSInteger)xResolution yResolution:(NSInteger)yResolution data:(LTBarcodeData *)data options:(nullable LTBarcodeWriteOptions *)options error:(NSError **)error NS_SWIFT_NAME(calculateBarcodeDataBounds(writeBounds:xResolution:yResolution:data:options:));
Parameters
writeBounds
The location where the barcode should be written.
xResolution
Horizontal resolution value of the destination image that will be used to write the barcode to.
yResolution
Vertical resolution value of the destination image that will be used to write the barcode to.
data
An BarcodeData object that contains the barcode data to write.
options
Options write options to use.
Example
This example will use CalculateBarcodeDataBounds to calculate the smallest size required to write the specified QR barcode, then it will create an image with the specified size, and finally write the barcode to it.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Barcode;
using Leadtools.ImageProcessing;
public void BarcodeWriter_CalculateBarcodeDataBoundsExample()
{
string imageFileName = Path.Combine(LEAD_VARS.ImagesDir, "MyQRBarcode.tif");
BarcodeEngine engine = new BarcodeEngine();
BarcodeWriter writer = engine.Writer;
// Create the QR barcode data, we will use the default but you change it
// if needed
QRBarcodeData barcode = BarcodeData.CreateDefaultBarcodeData(BarcodeSymbology.QR) as QRBarcodeData;
// Change the X Module to be 0.05 inches
QRBarcodeWriteOptions options = writer.GetDefaultOptions(BarcodeSymbology.QR) as QRBarcodeWriteOptions;
options.XModule = 50;
// Calculate the size of the barcode with these options
int resolution = 300;
writer.CalculateBarcodeDataBounds(LeadRect.Empty, resolution, resolution, barcode, options);
// Now create an image with the barcode size
LeadRect pixels = barcode.Bounds;
using (RasterImage image = RasterImage.Create(pixels.Width, pixels.Height, 1, resolution, RasterColor.FromKnownColor(RasterKnownColor.White)))
{
// Write the barcode
writer.WriteBarcode(image, barcode, options);
// Save the image to disk
using (RasterCodecs codecs = new RasterCodecs())
{
codecs.Save(image, imageFileName, RasterImageFormat.CcittGroup4, 1);
}
}
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";
}