/** * [raster description] * @param {[type]} image [description] * @param {[type]} mode [description] * @return {[type]} [description] */ raster(image, mode) { if (!(image instanceof Image)) throw new TypeError('Only escpos.Image supported'); mode = mode || 'normal'; if (mode === 'dhdw' || mode === 'dwh' || mode === 'dhw') mode = 'dwdh'; const raster = image.toRaster(); const header = _.GSV0_FORMAT['GSV0_' + mode.toUpperCase()]; this.buffer.write(header); this.buffer.writeUInt16LE(raster.width); this.buffer.writeUInt16LE(raster.height); this.buffer.write(raster.data); return this; }
/** * [print qrcode] * @param {[type]} code [description] * @param {[type]} version [description] * @param {[type]} level [description] * @param {[type]} size [description] * @return {[type]} [description] */ qrcode(code, version, level, size) { this.buffer.write(_.CODE2D_FORMAT.TYPE_QR); this.buffer.write(_.CODE2D_FORMAT.CODE2D); this.buffer.writeUInt8(version || 3); this.buffer.write(_.CODE2D_FORMAT[ 'QR_LEVEL_' + (level || 'L').toUpperCase() ]); this.buffer.writeUInt8(size || 6); this.buffer.writeUInt16LE(code.length); this.buffer.write(code); return this; }