BarcodeAlignment Enumeration (original) (raw)
Summary
Horizontal or vertical alignment to use when writing barcodes.
Syntax
C#
Objective-C
C++/CLI
Java
Python
[SerializableAttribute()]
public enum BarcodeAlignment
typedef NS_ENUM(NSInteger, LTBarcodeAlignment) {
LTBarcodeAlignmentNear,
LTBarcodeAlignmentCenter,
LTBarcodeAlignmentFar
};
public enum BarcodeAlignment
[SerializableAttribute()]
public enum class BarcodeAlignment
class BarcodeAlignment(Enum):
Near = 0
Center = 1
Far = 2
Members
Value | Member | Description |
---|---|---|
0 | Near | Aligns the barcode to the near edge of BarcodeData.Bounds. This is the left edge (LeadRect.Left) when this is a horizontal alignment or the top edge (LeadRect.Top) when this is a vertical alignment. The barcode actual width or height is not used. |
1 | Center | Aligns the barcode to the center BarcodeData.Bounds. This is horizontal center (LeadRect.Left + (LeadRect.Width - "barcodeWidth") / 2) when this is a horizontal alignment or the vertical center (LeadRect.Top + (LeadRect.Height - "barcodeHeight") / 2) when this is a vertical alignment. |
2 | Far | Aligns the barcode to the far edge of BarcodeData.Bounds. This is the left edge (LeadRect.Right - "barcodeWidth") if this is a horizontal alignment or the top edge (LeadRect.Bottom - "barcodeHeight") if this is a vertical alignment. |
Example
This example uses BarcodeAlignment to write a QR barcode at the 9 locations that can be set by changing the alignment. These locations are top/left, top/center, top/right, center/left, center/center, center/right, bottom/left, bottom/center and bottom/right.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Barcode;
using Leadtools.ImageProcessing;
public void BarcodeAlignment_Example()
{
string imageFileName = Path.Combine(LEAD_VARS.ImagesDir, "MyBarcode.tif");
BarcodeEngine engine = new BarcodeEngine();
BarcodeWriter writer = engine.Writer;
// Create the QR barcode
BarcodeData barcode = BarcodeData.CreateDefaultBarcodeData(BarcodeSymbology.QR);
// Create the image (8.5 by 11 inches at 300 DPI)
int resolution = 300;
using (RasterImage image = RasterImage.Create((int)(8.5 * resolution), (int)(11.0 * resolution), 1, resolution, RasterColor.FromKnownColor(RasterKnownColor.White)))
{
// We will control the position by alignment, so set the barcode bound to be the whole image
barcode.Bounds = new LeadRect(0, 0, image.ImageWidth, image.ImageHeight);
QRBarcodeWriteOptions options = writer.GetDefaultOptions(BarcodeSymbology.QR) as QRBarcodeWriteOptions;
// Let the engine determine the size of the barcode using X Module (default behavior)
// Use these alignments
BarcodeAlignment[] verticalAlignments = { BarcodeAlignment.Near, BarcodeAlignment.Center, BarcodeAlignment.Far };
BarcodeAlignment[] horizontalAlignments = { BarcodeAlignment.Near, BarcodeAlignment.Center, BarcodeAlignment.Far };
foreach (BarcodeAlignment verticalAlignment in verticalAlignments)
{
foreach (BarcodeAlignment horizontalAlignment in horizontalAlignments)
{
// Write the barcode using these alignments
options.HorizontalAlignment = verticalAlignment;
options.VerticalAlignment = horizontalAlignment;
writer.WriteBarcode(image, barcode, options);
}
}
// The image now have 9 barcodes
// Save the image
using (RasterCodecs codecs = new RasterCodecs())
{
codecs.Save(image, imageFileName, RasterImageFormat.CcittGroup4, 1);
}
}
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";
}