printImage static method
Future<void>
printImage(
{ - required String address,
- required List<int> imageBytes,
- required int imageWidth,
- required int imageHeight,
- PaperSize paperSize = PaperSize.mm58,
- ProgressCallback? onProgress,
- int addFeeds = 0,
- bool useImageRaster = false,
- required bool keepConnected,
})
Implementation
static Future<void> printImage({
required String address,
required List<int> imageBytes,
required int imageWidth,
required int imageHeight,
PaperSize paperSize = PaperSize.mm58,
ProgressCallback? onProgress,
int addFeeds = 0,
bool useImageRaster = false,
required bool keepConnected,
}) async {
final bytes = await _optimizeImage(
paperSize: paperSize,
src: imageBytes,
srcWidth: imageWidth,
srcHeight: imageHeight,
);
img.Image src = img.decodeJpg(bytes)!;
final profile = await CapabilityProfile.load();
final generator = Generator(
paperSize,
profile,
spaceBetweenRows: 0,
);
List<int> imageData;
if (useImageRaster) {
imageData = generator.imageRaster(
src,
highDensityHorizontal: true,
highDensityVertical: true,
imageFn: PosImageFn.bitImageRaster,
);
} else {
imageData = generator.image(src);
}
final additional = [
...generator.emptyLines(addFeeds),
...generator.text('.'),
];
return printBytes(
keepConnected: keepConnected,
address: address,
data: Uint8List.fromList([
...generator.reset(),
...imageData,
...generator.reset(),
...additional,
]),
onProgress: onProgress,
);
}