KZa*_*der 2 javascript image node.js zpl
我正在尝试将从 <div> 获取的屏幕截图转换为 NodeJS 中的 ZPL 字符串。与http://labelary.com/viewer.html非常相似,它会获取图像并输出 ZPL 代码。
我在做什么:
我正在使用一个名为“domToImage”的包(https://github.com/tsayen/dom-to-image),它截取了我所说的 DOM 的屏幕截图。我目前正在使用 domToImage.toBlob() 函数,该函数返回 Blob{size: 102776, type: "image/png"}。
为了测试它是否真的有效,我使用了“FileSaver”(https://www.npmjs.com/package/file-saver)将文件保存为PNG,它确实有效,而且图片看起来很棒!
这是我正在做的事情的简单示例代码
domtoimage.toBlob(document.getElementById('labelInfo'))
.then(function (blob)
{
console.log(blob)
saveAs(blob, "test.png");
});
Run Code Online (Sandbox Code Playgroud)
我想做的是将“blob”转换为 ZPL 字符串或格式,以便我可以将其发送到网络中的打印机。
A)我尝试安装 image-to-zpl(https://www.npmjs.com/package/image-to-zpl),但我认为我可能做错了什么,因为我无法像任何其他模块一样需要它我能够安装,但收到一条错误消息:找不到模块“image-to-zpl”的声明文件。'/path/to/node_modules/image-to-zpl/index.js' 隐式具有“any”类型。我什至尝试使用 import 而不是 require 但没有运气。
B)我在Java中找到了一个代码(http://www.jcgonzalez.com/java-image-to-zpl-example),但我几乎不理解任何东西,而且我不知道如何从我的应用程序发送数据,到 Java 文件中,然后使用 NodeJS 将字符串带回应用程序(我是菜鸟)。
C) 我研究了 Labelarys API,但它所做的只是将 ZPL 转换为 PDF 或 PNG,但不幸的是反之亦然。
D)考虑使用zbtprinter(https://github.com/bstmedia/zbtprinter/),因为它实际上具有我需要的功能,但不幸的是它会直接使用蓝牙将其发送到打印机而不输出ZPL,在我的情况下由于打印机没有蓝牙,无法使用。它在网络上。我仍然需要学习如何通过网络将整个字符串直接发送到打印机:/
我非常需要帮助,请大家帮忙
编辑
这就是我在 HTML 中所做的:
domtoimage.toBlob(document.getElementById('labelInfo'))
.then(function (blob)
{
console.log(blob)
saveAs(blob, "test.png");
});
Run Code Online (Sandbox Code Playgroud)
描述:我正在使用一个图像模板,其中包含所有徽标,其中标签的空白部分被 3 个 div 填充;我有 3 个 div,根据用户输入,这些字段被放置在图像模板内的指定位置;画布用于根据序列号的内容放置二维码。
当用户单击按钮时,后端代码会拍摄整个“labelInfo”div 的图像,然后将其转换为 ZPL 以便发送到打印机(这就是我想要实现的目标)
将通用图像转换为 ZPL 可用的图像并非易事,无法用几行伪代码来描述。相反,我已经将这段代码放置了一段时间,你的问题促使我清理它并使其可用:
https://github.com/metafloor/zpl-image
或者
npm 安装 zpl-image
适用于浏览器和 Node.js。在浏览器中,您传入一个<img>or<canvas>元素并以 ZPL 使用的 Z64 压缩 GRF 格式返回渲染图像。
用于打印图像而不用斑马打印机打印任何其他内容的 ZPL 如下所示:
// image is a <img> or <canvas>
let res = imageToZ64(image);
let zpl = `
^XA^LH0,0^FWN^PON^PMN^LRN
^FO10,10^GFA,${res.length},${res.length},${res.rowlen},${res.z64)
^XZ`;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5829 次 |
| 最近记录: |