| Name | Message | Date |
|---|---|---|
| 📄 escpos_printer.rs | 1 month ago | |
| 📄 mod.rs | 1 month ago | |
| 📄 receipt_printer_actor.rs | 1 month ago | |
| 📄 receipt_printer_error.rs | 1 month ago |
📄
src/receipt_printer/escpos_printer.rs
use escpos::{ driver::NetworkDriver, errors::PrinterError, printer::Printer, utils::{BitImageOption, BitImageSize, Protocol}, }; use crate::receipt_printer::ReceiptPrinter; pub struct EscposPrinter { printer: Printer<NetworkDriver>, } impl EscposPrinter { pub fn open(host: &str, port: u16) -> Result<Self, PrinterError> { let driver = NetworkDriver::open(host, port, None)?; Ok(Self { printer: Printer::new(driver, Protocol::default(), None), }) } pub fn print_image(&mut self, image: &[u8]) -> Result<(), PrinterError> { self.printer.init()?; self.printer.bit_image_from_bytes_option( image, BitImageOption::new( Some(ReceiptPrinter::IMAGE_WIDTH_PIXEL), None, BitImageSize::Normal, )?, )?; self.printer.print_cut()?; Ok(()) } }