←Select platform

HorizontalAlignment Property

Summary
Gets or sets a value indicating the horizontal alignment to use when fitting this barcode inside the destination bounds.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public BarcodeAlignment HorizontalAlignment { get; set; } 
@property (nonatomic, assign) LTBarcodeAlignment horizontalAlignment; 
public BarcodeAlignment getHorizontalAlignment() 
public void setHorizontalAlignment(BarcodeAlignment value) 
public: 
property BarcodeAlignment HorizontalAlignment { 
   BarcodeAlignment get(); 
   void set (    BarcodeAlignment ); 
} 
HorizontalAlignment # get and set (PDF417BarcodeWriteOptions) 

Property Value

A BarcodeAlignment enumeration member that indicating the horizontal alignment to use when fitting this barcode inside the destination bounds. Default value is BarcodeAlignment.Near.

Remarks

When writing barcodes, the BarcodeWriter object may not use all the area defined by the output rectangle (BarcodeData.Bounds) since not all sizes can be used when writing a barcode and the value of the width and height of the bounds can have a special meaning. For more information, refer to Writing Barcodes - Bounds and XModule.

In cases where not all of the bounds are used, an alignment value can be set to determine whether the resulting barcode is left, top, right, bottom or center aligned to the rectangle. For these, you can use the BarcodeAlignment enumeration to control how the barcode is written.

Example
C#
Java
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:\LEADTOOLS23\Resources\Images"; 
} 
 
import java.io.File; 
import java.io.IOException; 
 
 
import org.junit.*; 
import org.junit.runner.JUnitCore; 
import org.junit.runner.Result; 
import org.junit.runner.notification.Failure; 
 
import static org.junit.Assert.*; 
 
import leadtools.*; 
import leadtools.barcode.*; 
import leadtools.codecs.*; 
 
 
public void barcodeAlignmentExample(){ 
   BarcodeEngine engine = new BarcodeEngine(); 
   BarcodeWriter writer = engine.getWriter(); 
 
   // Create the QR barcode 
   BarcodeData barcode = BarcodeData.createDefaultBarcodeData(BarcodeSymbology.QR); 
 
   // Create the image (8.5 by 11 inches at 300 DPI) 
   int resolution = 300; 
   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.setBounds(new LeadRect(0, 0, image.getImageWidth(), image.getHeight())); 
 
   BarcodeWriteOptions options = (QRBarcodeWriteOptions)writer.getDefaultOptions(BarcodeSymbology.QR); 
 
   // 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 }; 
 
   for (BarcodeAlignment verticalAlignment : verticalAlignments){ 
      for (BarcodeAlignment horizontalAlignment : horizontalAlignments){ 
         // Write the barcode using these alignments 
         horizontalAlignment = verticalAlignment; 
         verticalAlignment = horizontalAlignment; 
         writer.writeBarcode(image, barcode, options); 
      } 
   } 
       
   // The image now have 9 barcodes 
 
   // Save the image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.save(image, "Result.jpg", RasterImageFormat.JPEG, 0); 
 
   assertTrue("Image unsuccessfully saved", (new File("Result.jpg")).exists()); 
   System.out.printf("Image loaded and saved to %s%n", new File("Result.jpg")); 
       
   image.dispose();; 
} 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Barcode Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.