Omniracle

How can I use the Libre Barcode fonts to create a scannable Code 128 barcode with text below it in a word processor or d

Want to make a scannable Code 128 barcode with text underneath right inside Word, Google Docs, or a design app? The trick is using the right font variant and, crucially, feeding it the correct encoded string—not your raw data. Here’s how to do it, step by step.

What you’ll need

  • Font: Libre Barcode 128 Text – the variant that automatically shows the human‑readable text below the bars [1] [7] [8] [11]
  • Encoder: the free, official online tool that turns your data into a proper Code 128 string [2] [3] [12]

Step‑by‑step recipe

  1. Install the font
    Grab “Libre Barcode 128 Text” from Google Fonts or the project site, and install it like any other font. [1] [4] [7]

  2. Encode your data
    Go to the encoder page:
    https://graphicore.github.io/librebarcode/documentation/code128.html [2] [12]
    Type the information you want to turn into a barcode (e.g., a product code) into the “Enter a text” box. The tool instantly shows you a preview and, more importantly, an encoded text string. Copy that entire encoded string. [3] [10] [12]

  3. Paste & apply the font

    • Open your word processor or design tool.
    • Paste the encoded string.
    • Select it and change the font to Libre Barcode 128 Text.
    • Adjust the point size (usually between 24 pt and 72 pt works well) so the barcode is tall enough for a scanner. [10] [12]
  4. Print & test
    Print the page and try scanning it. If it works, you’re done! If not, double‑check that you pasted the encoded string and not your original text. Also try removing any hyphens, slashes, or other special characters from your input data—they can sometimes confuse Code 128 scanners. [18]

Why can’t I just type my code and apply the font?

Because Code 128 is sneaky. Unlike simpler barcodes, it needs a mandatory check digit (a mod‑103 checksum) and specific start/stop characters woven into the symbol. [13] [14] [16] [17] [21] The font itself only knows how to draw each character as a set of bars; it doesn’t calculate the checksum or build the correct sequence for you. [5] [17]

If you type “ABC” and slap on Libre Barcode 128, you’ll get a pretty pattern that scanners will almost certainly ignore. [6] [20] The official encoder handles all the heavy lifting, so always copy its output rather than your raw data.

If it still won’t scan

  • Avoid special characters. Characters like - and / in your data can trip up some scanners. [18] Try plain alphanumeric codes first.
  • Fallback option. If Code 128 remains stubborn, you can switch to Code 39 (using the Libre Barcode 39 font). Just wrap your value in asterisks (e.g., *MYDATA*) and apply that font—it’s often more forgiving. [19] But note that this is a different barcode type, not Code 128.