@mmote/niimbluelib
Version:
Library for the communication with NIIMBOT printers
34 lines (33 loc) • 1.49 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.D110MV4PrintTask = void 0;
const packets_1 = require("../packets");
const AbstractPrintTask_1 = require("./AbstractPrintTask");
/**
* @category Print tasks
*/
class D110MV4PrintTask extends AbstractPrintTask_1.AbstractPrintTask {
printInit() {
return this.abstraction.sendAll([
packets_1.PacketGenerator.setDensity(this.printOptions.density),
packets_1.PacketGenerator.setLabelType(this.printOptions.labelType),
packets_1.PacketGenerator.printStart9b(this.printOptions.totalPages, 0, 1),
]);
}
printPage(image, quantity) {
this.checkAddPage(quantity ?? 1);
return this.abstraction.sendAll([
packets_1.PacketGenerator.pageStart(),
packets_1.PacketGenerator.setPageSize13b(image.rows, image.cols, quantity ?? 1),
...packets_1.PacketGenerator.writeImageData(image, { printheadPixels: this.printheadPixels() }),
packets_1.PacketGenerator.pageEnd(),
], this.printOptions.pageTimeoutMs);
}
waitForFinished() {
this.abstraction.setPacketTimeout(this.printOptions.statusTimeoutMs);
return this.abstraction
.waitUntilPrintFinishedByStatusPoll(this.printOptions.totalPages ?? 1, this.printOptions.statusPollIntervalMs)
.finally(() => this.abstraction.setDefaultPacketTimeout());
}
}
exports.D110MV4PrintTask = D110MV4PrintTask;