Commit 37f9dfd6 authored by Andrey's avatar Andrey

added Flutter example for image printing

parent bc179e94
import 'package:flutter/material.dart'; import 'dart:typed_data';
import 'package:flutter/material.dart' hide Image;
import 'package:esc_pos_printer/esc_pos_printer.dart'; import 'package:esc_pos_printer/esc_pos_printer.dart';
import 'package:flutter/services.dart';
import 'package:ping_discover_network/ping_discover_network.dart'; import 'package:ping_discover_network/ping_discover_network.dart';
import 'package:image/image.dart';
import 'package:wifi/wifi.dart'; import 'package:wifi/wifi.dart';
void main() => runApp(MyApp()); void main() => runApp(MyApp());
...@@ -87,7 +90,7 @@ class _MyHomePageState extends State<MyHomePage> { ...@@ -87,7 +90,7 @@ class _MyHomePageState extends State<MyHomePage> {
void testPrint(String printerIp, BuildContext ctx) { void testPrint(String printerIp, BuildContext ctx) {
Printer.connect(printerIp, Printer.connect(printerIp,
port: int.parse(portController.text), timeout: Duration(seconds: 5)) port: int.parse(portController.text), timeout: Duration(seconds: 5))
.then((printer) { .then((printer) async {
printer.println('Normal text'); printer.println('Normal text');
printer.println('Bold text', styles: PosStyles(bold: true)); printer.println('Bold text', styles: PosStyles(bold: true));
printer.println('Reverse text', styles: PosStyles(reverse: true)); printer.println('Reverse text', styles: PosStyles(reverse: true));
...@@ -124,6 +127,12 @@ class _MyHomePageState extends State<MyHomePage> { ...@@ -124,6 +127,12 @@ class _MyHomePageState extends State<MyHomePage> {
width: PosTextSize.size2, width: PosTextSize.size2,
)); ));
// Print image
final ByteData data = await rootBundle.load('assets/logo.png');
final Uint8List bytes = data.buffer.asUint8List();
final Image image = decodeImage(bytes);
printer.printImage(image);
printer.cut(); printer.cut();
printer.disconnect(); printer.disconnect();
......
...@@ -21,6 +21,7 @@ dependencies: ...@@ -21,6 +21,7 @@ dependencies:
sdk: flutter sdk: flutter
wifi: ^0.1.5 wifi: ^0.1.5
ping_discover_network: ^0.1.2 ping_discover_network: ^0.1.2
image: ^2.1.4
esc_pos_printer: esc_pos_printer:
path: ../../ path: ../../
...@@ -44,10 +45,8 @@ flutter: ...@@ -44,10 +45,8 @@ flutter:
# the material Icons class. # the material Icons class.
uses-material-design: true uses-material-design: true
# To add assets to your application, add an assets section, like this: assets:
# assets: - assets/logo.png
# - images/a_dot_burr.jpeg
# - images/a_dot_ham.jpeg
# An image asset can refer to one or more resolution-specific "variants", see # An image asset can refer to one or more resolution-specific "variants", see
# https://flutter.dev/assets-and-images/#resolution-aware. # https://flutter.dev/assets-and-images/#resolution-aware.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment