dLSoft  barcode & labelling software     

Datamatrix Font Kit

The DataMatrix font kit includes the fonts and both 32 and 64 bit ANSI and Unicode DLLs and 32 and 64 bit Active-X components, and a fully-managed-code .NET component, allowing calls from most programming languages to convert a character string into a DataMatrix barcode.

The current version adds support for the Datamatrix Rectangular Extensions (DMRE) and a component for .Net Standard 2.0 along with a sample application built with that component.

Fonts are provided in TrueType, OpenType, and Postcript formats and at several weights.

The DLL/OCX is suitable for calling from VB.NET, C#, Visual C++, Microsoft Office, Visual FoxPro, legacy Visual Basic 6 and many other development systems.The DLL/OCX provides control over the Security level, and the encoding Mode (Square or Rectangular).

The OCX may be used through its properties, and the Caption property may be bound to a database field.

The kit includes examples (with source code) for C/C++, MS Access, VB6, VB.NET and Visual FoxPro. Also included are mailmerge samples for Access and Excel data sources.

See the Help file or manual

Push button  Try or Buy  to Download or buy

[Datamatrix is also supported by the Universal Barcode font kit]

DataMatrix is a two dimensional matrix symbology which is made up of square modules arranged within a finder pattern. DataMatrix symbols may be square or rectangular.

Square Datamatrix barcode        Rectangular Datamatrix barcode Datamatrix symbols

The components in the Datamatrix font kit convert the barcode data into a string of ASCII characters which, when displayed/printed in one of the fonts provided, appears as a collection of squares that form the Datamatrix barcode symbol.

DataMatrix symbols can encode the entire ASCII character set and uses multiple encoding modes, which are, in order of efficiency:

Double digits – maximum capacity 3100 digits
Alphanumeric text – maximum capacity 2300 characters*
Byte values – maximum capacity 1550 bytes

*Note that capital letters, punctuation and new lines/paragraphs reduce this value.

In dLSoft products supporting Datamatrix the user may specify either a security level for the symbol (the proportion of the symbol devoted to error correction) or the number of barcode elements across the symbol.

dLSoft 2D barcode products support only ECC200 symbols – the older ECC140 (and below) are not supported. Also at this time ECI and Appended symbols are not supported.

Datamatrix Properties dialog

The properties of a barcode created using the Datamatrix font may be set programmatically by a call to one of the compoennts, or through the Barcode properties dialog (shown below).

Datamatrix properties dialog


Sample code in C/C++

A typical C/C++ call to the DLL to convert and output a text string is:

iLevel=0;                     // 0 for default
iMode=0;                    // 0 for Square, 1 for Rectangular
iFlags=0;                    //
n=Bar2Ddmf((LPTSTR)szData,&nl, &iFlags, &iLevel, &iMode,(LPTSTR)szBarcode);

szBarcode receives the multi-line text that forms the barcode.

The iFlags value may be used in the Unicode version to allow data to be encoded as Unicode, greatly simplifying the encoding of non-western character sets.

Sample code in VB

A typical VB call to the DLL to convert a text string is:

Dmfnet1.StartMode = 0        '0 for Square
Dmfnet1.SecurityLevel = 0
barcode1.Text = Dmfnet1.Barcode()

The barcode text has been copied to a TextBox (barcode1)

Adding to an Access Form or Report

To add the control to an Access Form or Report, open the form or report in Design view and ensure that the Toolbox is visible. Select the “More controls” icon on the Toolbox and then select the DMFOCX Active-X Control module from the list of controls displayed. Draw a rectangle for the control on the from or report.

Once added to a form or report, selection of the control will show the available properties in Access’s properties window. The font should be set by right-clicking on the control and choosing the Dmfocx control properties from the displayed menu.


Each kit may be licensed as a single PC product or as a developer/server version which permits Royalty-free of the components for up to 10,000 distributions.

System requirements

Requires Microsoft Windows 7/8/10 or Windows Server 2008 or later. To obtain printed barcodes a Windows compatible printer is required. One of the tools provided must be used for conversion of data into a barcode.

C++ and C# sample code included is designed for use with Visual Studio 2008 - 2017.

The 32 bit components may be installed on either 32 or 64 bit systems. 64 bit components require a 64 bit operating system.

Except where otherwise stated, the .NET components are designed for use with .NET Framework 2.0 or later

*Note: Testware versions randomly scramble characters, but otherwise provides a scannable barcode.
The fonts are not suitable for use without the one of the provided components to create the barcode.

All developer font products include an embedding licence so that fonts may be embedded into Acrobat pdf pages (see sample pdf document).

View 2D Barcode Font kits help files - see the Home menu above.