tags:

views:

609

answers:

8

Hello,

This is a question for people with a good experience with barcodes.

The FastReport report generator supports the following barcode standards:

  • Code 2_5

  • 39, 39 Extended

  • 93, 93 Extended

  • Codabar

  • 128A, 128B, 128C

  • EAN128A, 128B, 128C

  • EAN 13

  • EAN 8

  • MSI

  • PostNet

  • UPC A, E0, E1, Supp2

Since the solution is meant for small shops, I need to print labels and then read their barcode using entry-level tools (Brother QL-570 label printer, and ANL-810 scanner bought off eBay). The labels are 90mm wide and 29mm high. The barcode will only contain digits, as it represents the item's ID in a database.

To reduce reading errors to a minimum, which standard would you use, and, based on your experience, what minimum size should the barcode be?

Thank you.

+2  A: 

In our company we use Interleaved 2Of5. The height of the barcode itselft is 11mm.

Tommy
If the barcodes need to be as small as possible, I would advise I2of5 also. But the question states robustness as a criterion, and doesn't list I2of5 (unless that's meant by "Code 2_5"), so code39 could be the next best thing (perhaps with a check-digit like module 9).
Stijn Sanders
+4  A: 

Use Code 128. It supports all ASCII symbols and has a good data density.

There is no 128_A, B C. Seems they mean the start symbol which selects the initial encoding set. Then 128_C would be the one for only digits. Does your library not support automatic encoding?

If you want to have some robustness and can read 2D codes maybe go for Datamatrix ECC200. That one has a Reed-Solomon ECC inside and can recover from damage. It also has a much higher data density than most (all?) 1D codes.

If you need a system for structuring your information inside the barcode, have a look at GS1. Even if you don't use it you might be able to get some ideas from its concept.

Edit: Data density in Code128 is better than Code39 - since it gets mentioned that often in other replies.

Thomas Vultura
+1, Code 128 is the best general usage barcode format.
Blorgbeard
+4  A: 

I can suggest Code 39; the barcode Z3of9 is free afaik and works perfectly with datalogic and, I'd imagine, most other barcode scanners.

pierre
+1  A: 

I would suggest Code 39, this way you can be sure that your barcodes are compatible with pretty much every existing device.

Holgerwa
A: 

I've had success with code 39.

I worked on a system that used barcodes to track work moving through print factories. We used code 39, and it worked well, even when output by a dot matrix printer and read with hand-held light pens. When we upgraded the product to use a (then modern) Windows front end, we were able to print to a normal Windows printer using a code 39 barcode font and avoided having to upgrade all the readers.

Will Harris
+4  A: 

Code 39 is probably the best choice for the reasons other posters mentioned and because Code 128 and 2of5 are often disabled on new scanners and must be enabled before you can use them. This often leads non technical staff to assume the scanner is broken out of the box which doesn't give a good impression and gives you higher support costs.

If you need a higher data density than Code 39 provides then Code 128 would be my recomended option. Selecting the right A,B or C encoding can make them very small and you can change encoding in the middle of the barcode.

Code 2_5 is Interleaved 2 of 5. I wouldn't use it since it only allows numeric characters and you may want to add other characters at a later date.

2D barcodes have a greater data density than any 1D barcode but they require special scanners to read them that are much more exensive. Not recommended unless you have a definite need for them.

For easy reading I'd recommend your barcode should be at least 5mm high and leave 2mm white space on either side. Be sure to check the specs on your scanner, you need to know the smallest minimum bar width it can read and make your barcode larger than that.

Iron
+3  A: 

I'd maybe suggest using EAN/UPC, especially if you're using it in a small shop.

The products in the shop will generally carry their own barcodes (which will be EAN8/13 if you're in Europe or UPCA/E in the States) and so those can be entered into your database and then only print a barcode label for those products that don't have a barcode.

The product id's that you generate will be then of the same format of those already on the product. You will need to start your own codes with a 2 (in the case of EAN13) as this is reserved for 'in house' barcodes and will be guaranteed not to overlap with any manufacturers barcodes.

One potential downside of not generating your own codes for everything is that a manufacturer is required to change the barcode on a product is there is a change of packaging. For example, an Olympic branded Snickers bar will have a different barcode to a standard Snickers bar. Same product, different packaging, different barcode which can present issues for stock taking, sales analysis, etc.

The ANL-80 is a CCD scanner and if you print your barcode at about 40 x 25mm I think you should get good readability, as at that size there is good separation between the barcode lines and the line density of the EAN symbology is not that great.

Simon

Simon Temlett
A: 

I use Fast Reports to create all my bar codes.

I use Code 128C, printed 10mm high and approx 50 across (sized to fit an Avery label). I tried code 39, but it ended up being twice as wide.

SeanX