我有一个要求。我开发了一个包含 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;
}
我假设您从某处的数据库中获取内容。您必须在读取数据并逐行转换时使用该函数:
举个例子
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');
这会导致:
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"
您可以获取“dStr”的内容并将其显示在您的浏览器上,然后将“pStr”用于打印机。
我进一步建议使用了解 ZEBRA 的插件,而不仅仅是任何打印插件。
这是一款适用于 Android 和 Zebra 的产品
关于html - 将 HTML 转换为 ZPL - javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39381708/