0 purchases
yjy drago pos printer
drago_pos_printer #
This plugin allow developer to print to esc printer both wireless or bluetooth (currently support only on android). This has method to list down those printers easily.
Example #
Bluetooth Printer
_scan() async {
print("scan");
setState(() {
_isLoading = true;
_printers = [];
});
var printers = await BluetoothPrinterManager.discover();
print(printers);
setState(() {
_isLoading = false;
_printers = printers;
});
}
_connect(BluetoothPrinter printer) async {
var paperSize = PaperSize.mm80;
var profile = await CapabilityProfile.load();
var manager = BluetoothPrinterManager(printer, paperSize, profile);
await manager.connect();
print(" -==== connected =====- ");
setState(() {
_manager = manager;
printer.connected = true;
});
}
_startPrinter() async {
final content = Demo.getShortReceiptContent();
var bytes = await WebcontentConverter.contentToImage(content: content);
var service = ESCPrinterService(bytes);
var data = await service.getBytes(paperSize: PaperSize.mm58);
if (_manager != null) {
print("isConnected ${_manager.isConnected}");
_manager.writeBytes(data, isDisconnect: false);
}
}
copied to clipboard
Network Printer
_scan() async {
setState(() {
_isLoading = true;
_printers = [];
});
var printers = await NetworkPrinterManager.discover();
setState(() {
_isLoading = false;
_printers = printers;
});
}
_connect(NetWorkPrinter printer) async {
var paperSize = PaperSize.mm80;
var profile = await CapabilityProfile.load();
var manager = NetworkPrinterManager(printer, paperSize, profile);
await manager.connect();
setState(() {
_manager = manager;
printer.connected = true;
});
}
_startPrinter() async {
if (_data.isEmpty) {
final content = Demo.getShortReceiptContent();
var bytes = await WebcontentConverter.contentToImage(
content: content,
executablePath: WebViewHelper.executablePath(),
);
var service = ESCPrinterService(bytes);
var data = await service.getBytes();
if (mounted) setState(() => _data = data);
}
if (_manager != null) {
print("isConnected ${_manager.isConnected}");
_manager.writeBytes(_data, isDisconnect: false);
}
}
copied to clipboard
USB Printer
_scan() async {
setState(() {
_isLoading = true;
_printers = [];
});
var printers = await USBPrinterManager.discover();
setState(() {
_isLoading = false;
_printers = printers;
});
}
_connect(USBPrinter printer) async {
var paperSize = PaperSize.mm80;
var profile = await CapabilityProfile.load();
var manager = USBPrinterManager(printer, paperSize, profile);
await manager.connect();
setState(() {
_manager = manager;
printer.connected = true;
});
}
_startPrinter() async {
if (_data.isEmpty) {
final content = Demo.getShortReceiptContent();
var bytes = await WebcontentConverter.contentToImage(
content: content,
executablePath: WebViewHelper.executablePath(),
);
var service = ESCPrinterService(bytes);
var data = await service.getBytes();
if (mounted) setState(() => _data = data);
}
if (_manager != null) {
print("isConnected ${_manager.isConnected}");
_manager.writeBytes(_data, isDisconnect: false);
}
}
copied to clipboard
Supports #
Device
Network
Bluetooth
USB
Android
✓
✓
✓
IOS
✓
✓
✗
Macos
✓
✗
✗
Windows
✓
✗
✓
Linux
✓
✗
✗
*** USB: will be the set to the next plan of update
Getting Started #
flutter pub add drago_pos_printer
copied to clipboard
Thank to :
bluetooth_pos_printer
esc_pos_utils
ping_discover_network
network_info_plus
printing
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.