Printing labels for LIMS, ELN or LES is not always as easy as one might think.

It sounds easy to use some tool like Bartender to create labels so you might wonder why quite a number of projects are still writing code directly in languages such as  ZPL (Zebra Printer Language) or IPL (Intermec Printer Language). – t’s because you get more control. Sometimes it’s hard to format labels that have a lot of information packed onto them without overlap unless you go into actual code to adjust by pixel, rather than trying to fiddle around in some drag-and-drop tool where you’ve got a lot less control over how many pixels across the screen your mouse is going. Or, possibly the label is tiny but still needs something that barely fits.

Some people love the auto-generator tools that will pump-out code for you. That’s sort of okay but each tool works differently for different printers. Sometimes, you’ll find a tool only to find out that the code it puts out doesn’t run on your printer or just doesn’t show up remotely like what you actually need on your label. Keep in-mind, too, that there are a sometimes different versions of codesets. For example, if your printer is older or newer will depend whether you want a tool running ZPL II, for example. Personally, when I’m helping people get started with ZPL or IPL, I fervently beg them NOT to use these code generators – to get used to doing this with just your printer at your side and 160% (maybe this isn’t even enough) of all the patience you’ve collected for your personal use.

The Printer and Environment
Unless two printers are EXACTLY the same model with the same memory and everything else the same, they have the possibility of printing somewhat differently. You need your printer manual and to check the settings on the two printers if they’re printing somewhat differently. If they’re printing different fonts, they might have different fonts loaded (or one of them has just the installed fonts and nothing more). By the way, the “font” isn’t just the printed word character-set but also the barcode fonts, so check that both printers have the right barcode fonts loaded. Also, when you have two identical printers, where one prints and the other doesn’t, print a test page from two printers and compare them.

At some point and out of sheer desperation, try printing your label out as pure text and see if even that will print.

Trivial Note: You all already know to check that, if the printer requires a ribbon that it has one (i.e., that it’s not thermal transfer, for example). You all already know that you have to use the right labels for the type of print it’s using, I’m sure.

The Code or Tool
If you’re using a language such as ZPL or IPL, check whether your printer came with or has an example label on the brand’s web-site or installation disk. If you can get just a simple example label full of text to print, you can then start working toward building your label and understanding how to get various elements to print as you desire.

When you’re using a tool, with Bartender being a good example, it’s controlling the label somewhat differently than you might if you wrote code from scratch. As such, if you think you’re not getting all the options available to you, you might have to start programming, but using ZPL or IPL is a much different skillset than programming in some other type of programming language. It requires about a zillion times more patience, as you move things around, pixel to pixel.

It’s Not Easy
Even then, if you need anything special loaded onto your printer, it’s not necessarily trivial to do. Some fonts will only load for certain printer models and ONLY if they have additional memory added on. That’s just one of many examples of how what you might think is the same printer is actually different. Also, having two printers that are alike EXCEPT for their resolution isn’t a good thing. Often times, they will print the label as a different size, where the higher-resolution printer prints the label as much smaller than would the lesser-resolution printer.

By the way, if you want icons (such as the GHS – Globally Harmonized System icons) or anything in color, good luck with that unless you thought about that BEFORE you purchased the printer.

Your LIMS/ELN/LES Workflow Limitations
Even if you don’t write ZPL or IPL code, you still might need to write some code. Most of our laboratory informatics software come with limited spots in the workflow to generate labels. So, even with a built-in label tool, those tools will sometimes only generate sample labels and possibly only when the sample is logged and/or received. For more labels than that, it’s not uncommon to write code in our systems, and that code depends on the software product you’re using (e.g., you can use LIMS Basic for LabWare LIMS, either VGL or a .NET programming language for Thermo Fisher Scientific Informatics SampleManager).

If you’re buying new printers for your entire organization, keep in-mind all these issues. A printer that works fine in the US with the Roman character set won’t necessarily handle Chinese characters for your colleagues across the globe.

If You Think This Sounds Crazy
Some of you think this is just nuts – that this all just sounds so bizarre – and that might be because you’re printing pretty ordinary-looking black-ink-only labels on your laser printer for something like your study samples. If that’s the case, your problems are entirely different because your main problem is to get your labels to wrap, properly, for one, and sometimes that takes programming. So, we feel your pain – but don’t actually have a lot of sympathy for you.  😉

Gloria Metrick
GeoMetrick Enterprises

2 Thoughts to “A Few Label Printing Tips”

  1. arcanainformatica

    Very good summary. One other caveat to watch for, even when the printers are the same model and configuration, they may run on different versions of the firmware or controller board. These differences aren’t always apparent, unless you go digging for them.

    I recall a situation where an employer had standardized, in this case, on a Zebra printer, I believe Zebra’s TLP 2844 Desktop Printer, but was observing erratic results. On researching the issue, while all of the printers looked the same, I discovered that the printers were running three different versions of the controlling firmware. One version worked perfectly fine, the other two, to different degrees, would sometimes print corrupted characters or drop strings. A bad enough situation in any lab, but potentially lethal in a clinical lab. Once all the printers had been updated to the same version of the firmware, the issue went away.

    This is a good reminder to keep an open mind regarding diagnosing problems. While the IT group was digging through all of their LIMS code to identify the culprit, the real cause only became apparent when a comparison of the code sent to the printer and the printer output was made. A nice example of Sherlock Holmes’ adage that it was a capital mistake to generate a theory before collecting all the facts, else you might in sensibly twist the facts to fit your theory, as the IT group had.

  2. […] my last post, A Few Label Printing Tips, I mentioned moving items on barcode labels around by pixels. That sounds tedious, doesn’t […]

Comments are closed.