Softmatic .NET Barcode Library - Reference

Properties (in alphabetical order)

Name Type Comment
General
Checksum Boolean False: Don't calculate checksum. True: Calculate checksum.

Applies only to the following codes: Code 39, Code 2/5 Interleaved, Code 2/5 Industrial. Ignored for all other codes which are always with checksum. Laetus, PZN 7/8, Codabar are always without checksum.

Default: True
 
CurrentCode Integer The current barcode symbology.

CODE_EAN81000
CODE_EAN131001
CODE_ISBN101002
CODE_ISBN131003
CODE_UPCA1004
CODE_UPCE1005
CODE_1281006
CODE_128GS11007
CODE_25IL1008
CODE_25IND1009
CODE_ITF141010
CODE_391011
CODE_PZN1012
CODE_LAETUS1013
CODE_CODABAR1014
CODE_DATAMATRIX1015
CODE_PDF4171016
CODE_QR1017
CODE_AZTEC1018
CODE_DATABAR1019

Default: Code EAN 13
 
DataToEncode String Data to encode in the barcode. String can have up to 4096 characters (the practical limit for ordinary linear codes is 40, though). See section below for a list what the control expects for the various symbologies.

To encode non-printable charaters, e.g. a TAB, use the tilde, followed by the ASCII code, left padded with "0" to three digits. E.g. to encode a TAB, write "~009". To encode an FNC1 character (if you want to assemble your own Code 128 GS1 symbols), write "~999". To encode a tilde, write "~0126".

Note: When encoding non-printable characters make sure your scanner can actually read and transmit such data - this is not a given, especially if the scanner emulates a keyboard, e.g. via a wedge or USB. In many cases you will need to use a scanner that is connected via the serial port.

Default: "401234567890"
 
ModuleHeight Float Height of the barcode in mm. Ignored for EAN Family barcodes (see CurrentEANSize property below) and 2D matrix symbologies.

The smallest acceptable value depends on the application, values under 8 mm should be avoided, for Code 128 GS1 the value should be 32 mm.

Default: 25 mm
 
ModuleWidth Float Width of the smallest bar (= module) in mm. Ignored for EAN Family barcodes (see CurrentEANSize property below).

The smallest acceptable value depends on the print resolution, avoid values under 0.1 mm. For Code 128 GS1 the value should be between 0.495 and 1.016 mm.

Default: 0.5 mm
 
Ratio Float Ratio of the width of the wide bar to the width of the narrow bar. For 2-width codes (Code 39, Code 2/5) only. Ignored for all other codes.

The smallest acceptable value depends on the print quality and the resolution of the scanner; a ratio of 3 results in a low-density code, a ratio of 2 results in a high-density code. Values under 2 should be avoided.

Default: 3
 
Human Readable Part
HumanReadable Boolean Display human readable text under the barcode. Ignored for all 2D symbologies and ISBN family. ISBN barcodes are standardized and always come with text.

Default: True
 
HumanReadableFont String Name of the font to use for the human readable text.

Default: "Arial"
 
HumanReadableSize Float Size of the font for the human readable text in points. Ignored for EAN Family codes where the font size depends on the code size.

Default: 12 pt.
 
Output
MarginX Float Left and right margin of the barcode. Should not be under 5 mm.

Default: 5 mm
 
MarginY Float Top and bottom margin of the barcode. Should not be under 5 mm.

Default: 5 mm
 
Reduction Float Reduce bar width to compensate for ink spread (dot gain). Between 0% and 80%. For ordinary office laser printers a value of 2% is recommended, for ink-jet use 5%.

Default: 0 %
 
Specific (EAN)
CurrentEANReduce Float Reduce the height of an EAN symbol. Between 0% (no height reduction) and 80%.

Default: 0 %
 
CurrentEANSize Int Required EAN SC size. Between 0 (circa 81%) and 9 (200%). A value of 2 corresponds to the 100% SC 2 size.

Default: 6
 
Chevron Boolean Display a chevron (aka Light Margin Indicator) to the right of the code. EAN13, ISBN only.

Default: True
 
Specific (ISBN)
Addon String Text for ISBN addon satellite barcode. Must be 5 digits or empty (= no addon).

Default: ""
 
Specific (PDF417)
RequestCols Int Per default (RequestCols = -1) the control will create a PDF417 symbol that is roughly 3:2 (width : height) as recommended by the ISO standard. Specify the desired number of columns (between 3 and 30) if you require a different size.

Default: -1
 
Specific (QR)
QrECC Int Per default the control creates a Quality M QR code (medium error correction capacity) as this gives the best compromise between size and ECC capability. Values permitted:

0 Quality M (recommended) 1 Quality L (least) 2 Quality H 3 Quality Q (best)

Default: 0
 
Specific (Databar)
Subtype Int Sets the Databar subtype:

DATABAR_OMNI0
DATABAR_STACKED_OMNI1
DATABAR_EXPANDED2
DATABAR_EXPANDED_STACKED3
DATABAR_TRUNCATED4
DATABAR_STACKED5
DATABAR_LIMITED6
Default: 2 (Expanded)
 
SymbolsPerRow Int Sets the number of symbols per row (Expanded Stacked only). Must be an even number between 4 and 20.

Default: 4
 

Methods

Name Parameter Comment
Init void Must be called before the first use of the control. Resets all properties to the defaults as described in this document.

Returns: void
 
GetCode Float Creates a barcode, returns a Bitmap with the code. The parameter determines the output resolution, e.g. 300 for 300 dpi. The actual dimensions of the barcode (and, hence, the returned bitmap) are determined from the moduleHeight, moduleWidth and the encoded data.

Returns: Bitmap
 
EPS void Creates a barcode with the current setting and returns an EPS vector representation of the code. See the supplied sample project for an example.

Returns: String
 
SVG void Creates a barcode with the current setting and returns an SVG vector representation of the code. See the supplied sample project for an example.

Returns: String
 
License void Retrieves the license information of the libary. See the supplied sample project for an example.

Returns: String
 
Version void Retrieves the version of the libary in the format "Vx.x.x.x Build ddmmyyyy".

Returns: String
 

Barcode Specific Information - Data & Applicable Settings

SymbologyDataSettingsRemarks
EAN 87 or 8 digitsEAN size, truncation
EAN 1312 or 13 digitsEAN size, truncation, addon, sentinel*
ISBN 10ISBN 10 Nr., e.g. 1-123-12345-XEAN size, truncation, addon, sentinel*
ISBN 13ISBN 13 Nr., e.g. 978-1-123-12345-6EAN size, truncation, addon, sentinel*
UPC-A11 or 12 digitsEAN size, truncation, addon*
UPC-E7 or 8 digitsEAN size, truncationFirst digit must be a "0" or "1"
Code 128Digits, letters, special chars (max. 40 chars)Module width, -heightAutomatic selection of Code 128 sub types A, B, C
Code 128 GS1/EAN/UCCDigits, letters, parenthesized application identifier (max. 40 chars)Module width, -heightAutomatic selection of Code 128 sub types A, B, C

Enter your data including application identifiers, e.g. (01)1234567890. The software will automatically insert all required FNC1 symbols.
Code 2/5 InterleavedDigits 0-9 (max. 40 digits) Module width, -height, ratio, check digit
Code 2/5 IndustrialDigits 0-9 (max. 40 digits)Module width, -height, ratio, check digit
Code ITF-14Digits 0-9 (exactly 14 digits)Module width, -height, ratioSoftware adds "bearer bar"
Code 39 / 39 ExtendedDigits, letters (max. 40 chars)Module width, -height, ratio, check digitAutomatic selection of Code 39 / Code 39 Extended
PZN 7/87 or 8 DigitsModule width, -height, ratioSoftware will assemble PZN
LaetusDigits 0-9, max. value 131070Module width, -height
CodabarDigits 0-9 (max. 40 chars)Module width, -height
DatamatrixUp to 2000 chars **Module widthSquare modules, width = height
PDF 417Up to 2000 chars **Module widthModule ratio height : width = 3 : 1
QRUp to 2000 chars **Module widthSquare modules, width = height
AztecUp to 2000 chars **Module widthSquare modules, width = height
DatabarDepends on sub type
   Omnidir.13- or 14-digit GTINModule width and -height
   Omnidir. Stacked13- or 14-digit GTINModule width and -height
   ExpandedUp to 41 letters or 74 digitsModule width and -height
   Expanded StackedUp to 41 letters or 74 digitsModule width and -height, symbols per row
   Truncated13- or 14-digit GTINModule width and -height
   Stacked13- or 14-digit GTINModule width and -height
   Limited13- or 14-digit GTINModule width and -height

* The EAN 13, ISBN 10 und ISBN 13 can carry a satellite, or "add on", barcode. This add on can encode two or five digits.

EAN/UPC height is determined by the value for "Truncation". This value is percentage based, i.e. if you enter "50" here the code will have half the standard height.

Barcode Specific Information - Settings Details

SettingValue rangeRemarks
EAN SizeSC0 - SC9All retail barcodes, SC2 is the standard size
EAN Truncation0 - 80%Min. height for EAN family codes is 15mm (5/8")
Light Margin IndicatorYes / NoAka. sentinel, EAN 13 / ISBN only
Symbols per Row4 - 20Databar Expanded Stacked only
Check digitYes / NoCode 2/5 family and Code 39 only
Module width0.1 - 2mmWidth of the narrowest bar. Code 2/5, ITF-14, Code 39, Code 128, PZN, Codabar, Databar, Laetus, all 2D Codes only
Modul height5 - 100mmHeight of the code not counting the readable text. Code 2/5, ITF-14, Code 39, Code 128, PZN, Codabar, Databar, Laetus only
Ratio2.0 - 3.0Code 2/5, Code 39, PZN, Codabar only
Readable textYes / NoAll codes, except Laetus, 2D Codes (always No) and PZN, retail codes (always Yes) *
Readable fontDrop down listAll codes, except Laetus, 2D codes and retail codes *
Readable font sizeDrop down listAll codes, except Laetus, 2D codes and retail codes *

* With EAN/UPC, the font is set to Helvetica (Mac) or Arial (Win), respectively. The size of the human readable text is determined by the software to ensure that the text fits under the barcode. All retail codes are always created with human readable text.

Data binding

The DataToEncode property of the control is data-bindable. To bind the property at design time, select the control and hit F4 to display the properties; scroll down to DataBindings and select a data source from the list or create a new data source. Of course it's also possible to data bind the property at runtime.


Back to the manual index.