Imin Printer
A Flutter package for easy integration with Imin POS devices. Supports advanced printer commands, LCD display management, and cash drawer operations for retail and POS apps.
Note: After version 0.7.0, this package use IminPrinterLibrary SDK V2.0.0.17, which may causing unexpected behavior than older package version since I don't have access to test on Imin Devices.
Support
x
Android
Tested On
- Imin D1
- Imin D4 Pro
- Imin M2-202
- Imin M2 Pro
- Swift 2
Installation
flutter pub add another_imin_printer
What this package do
Printer Related
All printer related command available:
x
Initialize Printerx
Set print sizex
Get Printer Statusx
Get model namex
Get brand namex
Print raw bytes (Uint8List)x
Print textx
Print 2 Column textx
Print Bitmap (Uint8List)x
Print Bitmap base64 (String)x
Set Stylex
Partial cutx
Full cut
LCD Display Related
Tested on: Imin D1
x
Initialize LCD Managerx
Send bitmap base 64 to LCD Screenx
Clear LCD Screen
Cash Drawer Related
Tested on: Imin D4 Pro
x
Open cash drawer
You can combine this package with presentation_display to use customer display on some Imin device
Example
Instance
IminPrinter iminPrinter = IminPrinter();
Init Printer
Use init before accessing other functionality
iminPrinter.initPrinter(printSizeImin: PrintSizeImin.mm58);
Print Text
iminPrinter.printText(
'Sample Text',
printStyle: const PrintStyle(textAlign: PrintStyleAlign.center),
); // Print text on Center
Print 2 Column Text
iminPrinter.print2ColumnsText(['Left Text', 'Right Text']);
Print Bytes
iminPrinter.printBytes(Uint8List.fromList([0x1B, 0x40, 0x0A])); // Print raw bytes
Open Cash Drawer
iminPrinter.openCashDrawer();
Contributing
Contributions are welcome! Please open issues or submit pull requests for any improvements or bug fixes. Make sure to follow the existing code style and include tests where appropriate.
License
This project is licensed under the MIT License. See the LICENSE file for details.