Barcode, labelling and utility software


Barcode Libraries

dBarcode 32-bit DLLs  - (click here for 64-bit DLLs)

The dBarcode DLL products consist of a 32 bit DLL and full sample source code illustrating the writing of barcode applications in Microsoft Visual Basic 6 or VBA or C/C++. Suitable for Visual Studio 6 - Visual Studio 2008. Each package also includes a Delphi component (derived from TImage)

Each unit enables the developer to set the code, code type, size, font details, text justification, orientation, background and foreground colours, and to enable or disable text characters all from within their application.

Each unit generates both a pattern string for bars and spaces and a metafile picture containing the barcode image and (where enabled) the code text. The picture may be displayed, printed, saved or passed to the clipboard by the user’s code.
Source code for demonstration applications included. - see sample
Full HELP system.

Screen shot - click on images to enlarge

barcode creation with dBarcode dll 
Popup dialog  

Products

There are 11 dLSoft dBarcode DLL products, each supporting a range of barcode types

To download a TestWare version now or buy from the online store select the required product below. Licence covers both 32 and 64 bit versions

Product

Supports

dBarcode DLL – 1D Universal

over 60 barcode types**

dBarcode DLL – 2D Universal Aztec, DataMatrix, Maxicode, PDF417,Truncated PDF417, MicroPDF, *QR Code, *Micro QR and GS1-DataBar (RSS)

dBarcode DLL – Composite

GS1 Composite barcodes (does not include a Delphi component)

or for limited barcode type support:  

dBarcode DLL – Standard

Code 39, Extended 39, Code 93, Extended 93, Code 128, Interleaved 2 of 5 and Matrix 2 of 5

dBarcode DLL – GS1

EAN-13/8, UPC-A/-E (with supplementaries), EAN/UCC 14, GS1-128, ITF and SSCC

dBarcode DLL – Aztec

Aztec

dBarcode DLL – DataMatrix

DataMatrix

dBarcode DLL – MaxiCode

MaxiCode

dBarcode DLL – PDF417

PDF417, Truncated PDF417 & MicroPDF

dBarcode DLL – QRCode

*QR Code & *Micro QR Code

dBarcode DLL – Databar

GS1-DataBar (formerly RSS)

* Kanji mode requires data to be provided in a double byte array.

Features

  • - Create high resolution barcode images for Windows applications with a single call
  • - Optionally include text, bearer bars, margin indicators and generate checksums
  • - Set text justification, bar and background colours, orientation
  • - user definable control codes for Code 128 types.
  • - Creates image files in WMF, BMP, GIF, PCX, PNG formats
  • - Creates a pattern string for developers who wish to print their own bars
  • - Suitable for Visual Basic, VBA, Visual C/C++, and many other development systems
  • - DLL includes built-in dialog box for selecting barcode properties.
  • - 2D versions can produce mirror image barcodes

View the product Help files

**dBarcode DLL - Universal supports: 2 of 5, 3 of 9, Australia Post, Codabar, Code 11, Code 39, Extended Code 39, Code 93, Extended Code 93, Code 128, Code B, Deutschen Post, DUN14, EAN- 8, EAN-13, EAN-14, EAN-128/UCC-128, ISBN, ISMN, ISSN, IATA 2 of 5, ITF-14, ITF-6, Interleaved 2 of 5, InfoMail, Intelligent Mail, Italian Post 2/5, Italian Post 3/9, Japan Post, JAN, Korean Postal Authority, Matrix 2 of 5, MSI (Modified Plessey), Planet, Plessey, PostNet & FIM, Royal Mail 4 State, SSCC, SICI/SISAC, Swiss Post, Telepen (numeric and ASCII), UCC-14, UPC-A, UPC-E


System Requirements

Windows 2000/XP/2003/Vista
Development environment using a language capable of making DLL calls.

Licensing*

Each dLSoft dBarcode DLL may licensed as a single computer product or as a developer version which permits Royalty-free distribution of the DLL as part of the developer's own project for up to 10,000 distributions. Licences cover both 32 bit and 64 bit versions.


Using the dBarcode DLL

Probably the most import matter to resolve before using the DLL is what type of image is to be created.
We always recommend that barcode images are created as metafile images or enhanced metafile images as these have the highest possible resolution. Using the library calls BarCodem (or BarCdm) and BarCodemx (or BarCdmx) will allow handles to these metafile images to be obtained directly.

Some developers may prefer (or be forced) to obtain the images from the clipboard (using BarCodec or BarCdc) or from a disk file (BarCodef or BarCds). Others may be unable to use metafile images and be forced to use either monochrome bitmaps or device independent bitmaps, at the current default resolutions using calls to SetDpi, BarCodeb or BarCoded respectively, or at a specified target resolution in dpi using BarCodeb3 or BarCoded3 respectively.

The DLL can also draw the barcode image directly into a device context using BarCodeh or BarCodeh2 (or BarCdh2)

Library calls are formed into two Groups. Group 1 calls to the DLL require a Barcode structure to be filled prior to the call. Group 2 calls do not require the Barcode structure (unless a structure is being retrieved from the dialog box), but do require a dialog box to be used to set barcode properties (as shown in the image above).

Visual Basic programmers should note that some of the elements of the structure are character arrays, and that when these are defined in VB as BYTE arrays, four characters are lost through the VB array header, as shown in the VB declaration below.

Finally it must be emphasised that barcodes created with the kit should be tested before being used. The thickness of lines is an essential element in the readability of barcode images, and while the DLL attempts to produce the correct line thickness, what actually appears on paper is also significantly influenced by the printer technology being used.

The Composite library

The library calls for the GS1 Composite library are analogous to those for the dBarcode DLLs, except that all calls that supply a data string have been modified to supply two data strings – one for the Linear portion of the barcode and one for the Composite Component of the symbol.

The size of symbols generated by the composite library is determined entirely by three members of the BARCOMP structure:
xunit – this is the width (in Mils – 1/1000 inches) of the thinnest element of the symbol.
ymult – this is the value by which xunit is multiplied to generate the height of each element of the composite component.
linheight – this is the height of linear bars in Windows HIMETRIC units (0.01 mm). The barcode properties dialog allows this value to be provided in Inches or Millimetres.
For Databar Stacked and Truncated types there are height values specified by the GS1 Databar standard and these override any value provided through the linheight parameter.

The size of the symbol created is returned in the length and height members of the BARCOMP structure in Windows HIMETRIC (0.01 mm) units.


Delphi components

The dBarcode for Delphi Components are wrappers for the dBarcode DLLs, and create TPicture images containing a barcode and (optionally) the text version of the code underneath the bars. The metafile picture may be viewed, printed, saved to disk or copied to the clipboard through the users own program.

The barcode component is based on the TImage and so inherits many of its properties from this object. Over and above this, the component supports properties specific to its application, in this case the production of Barcodes. The component can be placed on a form and its properties set a Design time or altered through code at Run-Time.
A sample application is included in the form of the dBarcode1 project, which includes the UNIT1.PAS source file.

A typical example is shown below

procedure TForm1.DoBarcode();
begin
Barcode1.Xunit:=20;
Barcode1.BarcodeType:=8;
Barcode1.Caption:=Edit1.Text;
errormessage.Text:=Barcode1.GetError(Barcode1.Error);
end;

Printing the barcode

To print a barcode image one approach is to Draw the Picture on the Printer.Canvas, as shown in the code sample below.
Note that the Picture is created in HIMETRIC units, and so to print the image at the correct size these must be converted into printer pixel units using the GetDeviceCaps() function.

procedure TForm1.Button2Click(Sender: TObject);
var
ii: integer;
jj: integer;
Rect: TRect;
pScalex: Integer;
pScaley: integer;
begin
DoBarcode(); {recreate the barcode image}
{set the target rectangle for drawing on the printer}
{change from mm to pixels}
pScalex:=GetDeviceCaps((Printer.Handle),LOGPIXELSX);
pScaley:=GetDeviceCaps((Printer.Handle),LOGPIXELSY);
ii:=(Barcode1.ImageWidth*pScalex) div 2540;
jj:=(Barcode1.ImageHeight*pScaley) div 2540;
Rect.Left:=200;
Rect.Top:=200;
Rect.Right:=Rect.Left+ii;
Rect.Bottom:=Rect.Top+jj;
Printer.BeginDoc;
Printer.Canvas.StretchDraw(Rect, Barcode1.Picture.Graphic);
Printer.EndDoc;
end;


Sites operated by DL Technology Ltd                            barcode software       barcode fonts                  
E-mail: webmaster@dlsoft.com                      [Product index] [Site index
17/12/2008

dLSoft is a registered trade mark of DL Technology Ltd, a company registered in England number 3615271

Award-winning publisher 2006    dLSoft - Award-winning publisher 2006 & 2007     Award-winning publisher 2007