getBytes method
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;
}