brother_ql

Crates.iobrother_ql
lib.rsbrother_ql
version1.0.6
sourcesrc
created_at2024-03-07 20:30:32.803445
updated_at2024-10-02 19:33:34.001888
descriptionGenerate Brother QL Raster Command data from images
homepage
repositoryhttps://github.com/mkienitz/brother_ql
max_upload_size
id1166266
size52,356
Maximilian Kienitz (mkienitz)

documentation

README

brother_ql

This is a crate to convert image data to the Raster Command binary data understood by the Brother QL-820NWB label printer.

  • It is still very much work-in-progress so some bugs might still exist.
  • Currently, only the 820NWB printer is supported but other printers should be relatively easy to add - especially the 8xx sibling models.
  • The two-color (red and black) printing mode is supported
  • For details, check the official Raster Command Reference

Here is a small example on how to use it:

use std::{error::Error, fs::File, io::Write};

use brother_ql::{
    printjob::{CutBehavior, PrintJob},
    media::Media,
};

pub fn main() -> Result<(), Box<dyn Error>> {
    let img = image::open("test.png")?;
    let job = PrintJob {
        no_pages: 1,
        image: img,
        media: Media::C62,       // use 62mm wide continuous tape
        high_dpi: false,
        compressed: false,       // unsupported
        quality_priority: false, // no effect on two-color printing
        cut_behaviour: CutBehavior::CutAtEnd,
    };
    let data = job.compile()?;
    let mut file = File::create("test.bin")?;
    let _ = file.write(&data);
    // We can now send this binary directly to the printer, for example using `nc`
    Ok(())
}

Commit count: 21

cargo fmt