Ism*_*MAC 5 html bluetooth zpl zebra-printers cordova
我有一个要求。我开发了一个具有 HTML 内容的网络应用程序。我想将此内容打印到 Zebra 蓝牙打印机 (IMZ320)。浏览了几篇博客后,我发现需要将 HTML 内容转换为 ZPL 格式才能打印。
我们可以将 HTML 转换为 ZPL,然后使用插件发送打印 - https://github.com/LiamBateman/cordova-print
是否有任何插件或库可以实现 HTML 到 ZPL 的转换?
非常感谢你,赛义德·伊斯梅尔。
我为此使用了一个简单的 JS 函数。第一个函数用于格式化文本以在 HTML 中显示,第二个函数用于格式化文本以进行 ZEBRA 打印。我在本例中使用了 CPCL。但 ZPL 也会以同样的方式工作。
function sDisplayText(left) {
var sResult = "<div>" + left + "</div>";
return sResult;
}
function sPrintText(left) {
var sResult = "T 7 0 30 30 " + left + '\r\n';
return sResult;
}
Run Code Online (Sandbox Code Playgroud)
我假设您从某处的数据库获取内容。您必须在读取数据并逐行转换时使用该函数:
这是一个例子
var pStr = "";
var dStr = "";
pStr = pStr + sPrintText('My test row 1');
dStr = dStr + sDisplayText('My test row 1');
pStr = pStr + sPrintText('My test row 2');
dStr = dStr + sDisplayText('My test row 2');
Run Code Online (Sandbox Code Playgroud)
这将导致:
dStr = "<div>My test row 1</div><div>My test row 2</div>"
pStr = "T 7 0 30 30 My test row 1\r\nT 7 0 30 30 My test row 2\r\n"
Run Code Online (Sandbox Code Playgroud)
然后,您可以获取“dStr”的内容并将其显示在浏览器上,并将“pStr”用于打印机。
我进一步建议使用一个能够理解 ZEBRA 的插件,而不仅仅是任何打印插件。
这是一款适用于 Android 和 Zebra 的产品
https://github.com/bstmedia/zbtprinter/