Create QR-Code!

FAQ: Barcode Printing and Decoding Issues

Problems with printing quality, wrong characters, unreadable bar codes...

Barcode Quality

Adjust module width

Barcodes can't be scanned

Usually the horizontal line of the demo version doesn't affect reading (only if the barcode is very small, in such a case contact us for a temporary license key for proper testing).

Reading problems can occur if the printer has low resolution (<=300 dpi) - especially thermo transfer label printers need adaption. Solution: Adjust the narrow bar width to the pixel width of a printer dot.

You can do this by adjusting the property Module Width - examples:

200dpi ... 2Pixel = 0.254mm   (ModuleWidth = 254)
202dpi ... 2Pixel = 0.251mm   (ModuleWidth = 251)
203dpi ... 2Pixel = 0.250mm   (ModuleWidth = 250) (8 dots/mm!)
300dpi ... 3Pixel = 0.254mm   (ModuleWidth = 254)

This diagram illustrates the optimization.

Similar effects can be achieved with the Optimize Resolution property* (see software documentation and Barcode Reference).

Important for Controls: If you change the ModuleWidth also the symbol width will change (but not the bounding rectangle), so make sure that the bounding rectangle of the Control is wide enough to hold the complete symbol in order to prevent clipping.

Please follow also the hints in the Zebra Quality Assurance White Paper.

Barcode Quality

Draw Mode

Optimize Resolution

Low Grade with 203 dpi Thermal Printer

Fine tune the module width

Adapt the module width to the printer dot size (as shown above).

Adjust the draw mode

In order to cope with printer driver problems the drawing mode for bar codes can be switched between compatible and quality. If you see distortions in the bar code change the draw mode to compatible. If the bars are wider as they should be (and the gaps are too small) change the draw mode to quality. Depending on the software you are using, the draw mode can be adjusted either in the program options, in the config file or in the object properties.

Take care if Optimize Resolution should be used

Depending on the printer vendor and the Windows printer driver the Optimize Resolution feature of TBarCode and TFORMer can either improve or decrease the quality.

Background (Example):

Zebra lists in their technical printer specification a resolution of 8 dots/mm or 203 dpi. These 8 dots/mm result in a dot width of 0.125 mm equivalent to 203.2 dpi. But the printer driver indicates 203.0 dpi which is different and lead to a wrong optimization. At 203 dpi the Optimize Resolution feature will adapt the module width to a dot width of 0.125123 mm. If the printer driver internally uses 0.125 mm, the bars and gaps are calculated slightly wider as they should be.


In practice we have seen that it depends on the printer and printer driver if Optimize Resolution should be used or not. If you can see that the narrow bar width is not constant throughout the symbol you should consider to enable/disable the Optimize Resolution flag and then verify if the bar code quality is getting better or worse. Please contact our support for more information and recommendations.

With TFORMer internal drivers for 203 dpi printers you should always use Optimize Resolution.

Wrong Barcode Scans

Adjust keyboard layout

Wrong Character(s) when reading a Barcode

Keyboard Layout

Problem: mixed up characters like "-" is read as"/".

Solution: change the keyboard layout setting in your keyboard wedge scanner.

These problems can occur with scanners connected to the keyboard cable of your system. The scanner translates the barcode into keystroke sequences - these keystrokes are language dependent. To solve the problem make sure that the "keyboard language" of the scanner matches the language of the used keyboard. Please check out the configuration manual of the scanner - usually the manual contains some configuration bar - codes which must be scanned with the scanner.

Codepage (2D Barcodes)

For encoding characters outside of the standard ASCII table (0-127) you can choose different code pages (with specific 2D bar codes). If you choose a non-standard code page (other than default) you can get mixed up or non readable characters. Whenever possible you should always use the default code page of the respective 2D bar code. If you try to encode special characters (like Ä or Ñ), make sure that the 2D symbology in use is able to encode them with the default code page.

Printing Problems

Use alternative Printing Method

Distorted Output with Toshiba TEC and DataMax printers

If this occurs during printing, this effect is caused by the printer driver. Along other printer models this effect happens with Toshiba TEC and DataMax printers.

If this occurs during bitmap generation, this effect is caused by the screen driver.

The solution is to change the draw mode of TBarCode:

TBarCode V8+

Set the ActiveX Property DrawMode to Compatible.

TBarCode V7

  1. Create a file barcode.ini with the following content:
  2. [DRAW_MODE]
  3. Copy the barcode.ini file to the installation directory of TBarCode (where you can find the file tbarcode7.ocx or tbarcode7.dll).
  4. Restart the program.

Printing Under Linux

Which Thermo Printers can be used with your Linux software?

You can use TBarCode/X and TFORMer with CUPS drivers.

CUPS drivers exist for Dymo printers and Seiko printers. For other printers: Please contact your label printer company directly for available CUPS drivers.

You can use TBarCode/X also with PCL-5 printers:

For example, Microplex offers PCL-5 label printers


Our TFORMer label software has a built-in ZPL-II driver for Zebra Thermo Printers (no CUPS driver required in this case).

© TEC-IT Datenverarbeitung GmbH, Austria  |  Site Map  |  RSS  |  Imprint  |  Legal Conditions and Privacy  |  Contact