VB.NET Code 39 Generator Size Setting Tutorial

sample source code to generate linear Code 39 images and adjust barcode size in VB.NET

  • Generate high quality Code 39 barcode image in or via VB.NET IDEs
  • Capable to encoded lowercase letters as data characters in Code 39 Extension
  • Easy to set the width of wide bars and narrow bars
  • Set the space between data characters basing on width of narrow bars
  • Supported image formats include Gif, Tiff, BMP, PNG, and Jpeg
  • Provide option to add mod 43 checksum in Code 39
  • Calculate the value of mode 43 automatically once checksum is used
  • Compatible with ISO / IEC 16388 (2nd edition 2007-05-15)

Code 39, also known as Alpha39, Code 3 of 9, Code 3/9, Type 39, USS Code 39, or USD-3, is the first alpha-numeric linear barcode symbology used world-wide.

How to generate, print barcode using .NET, Java sdk library control with example project source code free download:

Code 39 Symbology Structure

W: the width of the whole Code 39 barcode image, controlled by property BarCodeWidth

X (X ≥ 1 pixel): the width of Code 39 narrow bar , controlled by property X

N X (2X ≤X ≤ 3X): the width of Code 39 wide bar, related to property N

I (I ≥ X): the width of the inter-character space; a multiple of X, related to property I

C: the number of encoded Code 39 data characters, including module 43 check character if used; related to property Data

Q (Q ≥ 10X): the width of the quiet zone, related to property LeftMargin & RightMargin

More information about Code 39 barcode settings in VB.NET Barcode Generator,please see:


Code 39 VB.NET Generator Size Setting Tutorial

After Code 39 VB.NET Generator installation, get it ready in VB.NET by placing the following statement:

Dim code39 As OnBarcode.Barcode.Linear

code39 = New OnBarcode.Barcode.Linear

code39.Type = OnBarcode.Barcode.BarcodeType.CODE39

If any lowercase letter ("a" through "z") is to be encoded in Code 39, you have to change above statement into:

Dim code39 As OnBarcode.Barcode.Linear

code39 = New OnBarcode.Barcode.Linear

code39.Type = OnBarcode.Barcode.BarcodeType.CODE39EX

Lowercase letter "a" through "z" is not encodable in Code 39, while it could be encoded by Code 39 Extension.


As there are wide bars and narrow bars in Code 39. Property N (Type: Float; Default: 2) is used to to set the wider bars in Code 39. The value of Property N represents the ratio of wide bars to narrow bars, which ranges from 2.0 to 3.0.

Sample usage:

code39.N= 2.5


The width of spaces between characters in Code 39 is defined by Property I (Float; Default: 1).

Sample usage:

code39.X = 1

code39.I = 2


UOM is the controller of size setting unit. Pixel, Cm, and Inch are provided as its options. The default value of UOM is Pixel. For example, type the following statement to select Pixel as the unit of size setting measure:

code39.UOM = OnBarcode.Barcode.UnitOfMeasure.PIXEL

X & Y

Property X (Type: Float; Default: 1) and Property Y (Type: Float; Default: 60) are used in Code 39 barcode symbol size setting. X is for the module width setting, and Y controls the height of the bar.

Sample usage:

code39.X = 2

code39.Y = 70

BarCodeHeight & BarCodeWidth

Property BarCodeHeight (Type: Float; Default: 0) and Property BarCodeWidth (Type: Float; Default: 0) to set the size of the whole image.

Sample usage:

code39.BarcodeHeight = 60

code39.BarcodeWidth = 175


When the value of X, Y, BarCodeWidth, and BarCodeHeight conflict with each other, Property AutoResize (Type: bool; Default: False) should be enabled to solve the problem and make the Code 39 100% compatible with its symbology specification and ISO 16388. See Code 39 Barcode Size in VB.NET to know more usage of AutoResize.

Sample usage:

code39.X = 2

code39.BarcodeHeight = 60

code39.AutoResize = True

TopMargin, BottomMargin, LeftMargin, & RightMargin

Using Code 39 VB.NET Generator, a quiet zone with 10X width will be generated automatically at each side of the Code 39. When wider quiet zone is needed, you can increase the value of properties LeftMargin (Type: Float; Default: 0) and RightMargin (Type: Float; Default: 0). You can also create margins using TopMargin (Type: Float; Default: 0) and BottomMargin (Type: Float; Default: 0).

Sample usage:

code39.TopMargin = 10

code39.BottomMargin = 10

code39.LeftMargin = 10

code39.RightMargin = 10


Human readable text are required in almost every linear barcode symbology. Property TextMargin (Type: Float; Default: 6 pixel) is used to set the space between Code 39 bar code and the human readable text below the barcode.

Sample usage:

code39.TextMargin = 10

OnBarcode is a market-leading provider of barcode imaging generator, reader controls and components for ASP.NET, Windows Forms, WPF, as well Java, Android, iOS (iPhone, iPad) across all major enterprise development platforms. We provides comprehensive tutorials and how-tos for various linear, 2d barcode information, such as C# in ASP.NET, C# .NET, C# Barcode Encoding, C# Barcode Image, VB.NET in ASP.NET, VB.NET Winforms, VB.NET Barcode Encoding. OnBarcode barcode products are supported by RasterEdge ASP.NET Document Viewer, which supports ASP.NET PDF Viewer, ASP.NET MVC Document Viewer, ASP.NET PDF Editor, MVC PDF Viewer. And provide high quality C# Convert PDF to Tiff, C# Convert PDF to Word, C# Convert PDF to HTML, C# Convert PDF to Jpeg images, and their easy and simple documents, like C# PDF SDK, C# extract text from PDF, C# Compress PDF, Print PDF in C# and C# extract image from PDF.
Terms of Use | Privacy Policy
Copyright © OnBarcode.com . All rights reserved.