UNPKG

@mmote/niimbluelib

Version:

Library for the communication with NIIMBOT printers

41 lines (40 loc) 1.69 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.B21V1PrintTask = void 0; const packets_1 = require("../packets"); const AbstractPrintTask_1 = require("./AbstractPrintTask"); /** * @category Print tasks */ class B21V1PrintTask 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.printStart1b(), ]); } async printPage(image, quantity) { this.checkAddPage(quantity ?? 1); for (let i = 0; i < (quantity ?? 1); i++) { await this.abstraction.sendAll([ // PacketGenerator.printClear(), packets_1.PacketGenerator.pageStart(), packets_1.PacketGenerator.setPageSize4b(image.rows, image.cols), ...packets_1.PacketGenerator.writeImageData(image, { countsMode: "total", enableCheckLine: true, printheadPixels: this.printheadPixels(), }), packets_1.PacketGenerator.pageEnd(), ], this.printOptions.pageTimeoutMs); } } waitForFinished() { this.abstraction.setPacketTimeout(this.printOptions.statusTimeoutMs); return this.abstraction .waitUntilPrintFinishedByPrintEndPoll(this.printOptions.totalPages, this.printOptions.statusPollIntervalMs) .finally(() => this.abstraction.setDefaultPacketTimeout()); } } exports.B21V1PrintTask = B21V1PrintTask;