mod dithering; mod escpos; use image::{ImageError, ImageReader}; use std::{env, fs, io, io::Write, process}; fn main() { let args: Vec = env::args().collect(); let len = args.len(); if len < 2 || len > 2 { println!("Please provide a path to the image."); process::exit(1); } let img = ImageReader::open(&args[1]) .map_err(|err| ImageError::IoError(err)) .and_then(|v| v.decode()) .unwrap(); let mut escpos = escpos::escpos_raster(&img, Some(escpos::ImageOrientation::Largest), Some(0)); for _ in 0..2 { escpos.push('\n' as u8); } io::stdout().write(&escpos).unwrap(); }