Skip to content

mkienitz/brother_ql

Repository files navigation

Brother QL Rust Tools

Rust tools for Brother QL series label printers. This project provides both a Rust library crate for programmatic label printing and a command-line tool for easy printing from the terminal.

📦 Components

📚 brother_ql - Rust Library

A Rust library to convert images to Brother QL raster command data and print labels directly via USB or kernel connections.

Features: Image to raster conversion, USB printing with status monitoring, two-color printing support, 28+ media types

Links:

Quick example:

use brother_ql::{connection::*, media::Media, printjob::PrintJobBuilder};

let mut conn = UsbConnection::open(UsbConnectionInfo::discover()?.unwrap())?;
let job = PrintJobBuilder::new(Media::C62)
    .add_label(image::open("label.png")?)
    .build()?;
conn.print(job)?;

🔧 brother-label - CLI Tool

A command-line application for printing labels to Brother QL printers. It's a minimal wrapper around the brother_ql library.

Features: Exposes almost all capabilities of the library crate

Links:

Quick example:

brother-label print label1.png label2.png --media d24 --usb-auto-discover --copies 4 --cut-behavior=no-cut

🖨️ Supported Printers

The following Brother QL label printers are supported:

  • 5xx series: QL-560, QL-570, QL-580N
  • 6xx series: QL-600, QL-650TD
  • 7xx series: QL-700 ✅, QL-710W, QL-720NW
  • 8xx series: QL-800, QL-810W, QL-820NWB ✅

Legend:

  • ✅ = Tested and confirmed working
  • No mark = Supported but not yet tested by contributors

Help us test! If you have one of the untested printer models, please try it out and let us know how it works! Feel free to:

  • Open an issue to report successful testing
  • Report any problems you encounter
  • Contribute improvements to support additional models

For more details, check the official Raster Command Reference (this one is for the 8xx series).

🚀 Getting Started

Want to print labels from the command line? → See the brother-label CLI documentation

Want to integrate printing into your Rust application? → See the brother_ql library documentation

💬 Contributing & Issues

This project is still new and hasn't been tested across all printer models and scenarios. If you encounter any problems, unexpected behavior, have successful test results to report, or have suggestions for improvements, please report an issue on GitHub.

Your feedback helps make these tools better for everyone!

About

Generate Brother QL Raster Command data from images

Resources

License

Stars

12 stars

Watchers

2 watching

Forks

Packages

 
 
 

Contributors