getBytes method

  1. @override
Future<List<List<int>>> getBytes()

Implementation

@override
Future<List<List<int>>> getBytes() async {
  final cmd = <List<int>>[];
  final startTime = DateTime.now();
  final images =
      await ISOManager.loadBalanceFuture<List<img.Image>, List<dynamic>>(
    ImageDecodeTool.decodeImage0,
    [
      imgData,
      imgSizeLimit,
    ],
  );
  final endTime = DateTime.now();
  final diffTime = endTime.difference(startTime).inMilliseconds;
  LogTool.log(
    'image库解析图片耗时:$diffTime 毫秒',
  );
  final startTime1 = DateTime.now();
  for (int index = 0; index < images.length; index++) {
    final image = images[index];
    final imageBytes =
        await ISOManager.loadBalanceFuture<List<int>, img.Image>(
      decodeBytes,
      image,
    );
    List<int> bytes = [];
    bytes += imageBytes;
    if (index == images.length - 1) {
      Generator generator = Generator();
      bytes += generator.feed(2);
      bytes += generator.cut();
    }
    cmd.add(bytes);
  }
  final endTime1 = DateTime.now();
  final diffTime1 = endTime1.difference(startTime1).inMilliseconds;
  LogTool.log(
    '图像转打印字节耗时:$diffTime1 毫秒,切图总数:${images.length}',
  );
  return cmd;
}