如何通过 ZPL 将 dpi 从 200 更改为 300

本文关键字:何通过 ZPL dpi | 更新日期: 2023-09-27 18:18:31

如何通过 ZPL 将 dpi 从 200 更改为 300?

我想在打印机 S4M (200 dpi( 和 ZT230 (300 dpi( 上使用相同的 ZPL 代码。

如何通过 ZPL 将 dpi 从 200 更改为 300

^MU 命令设置打印机使用的度量单位。 ^MU 工作逐个字段。设置单位模式后,它会从一个字段延续到另一个字段,直到输入新的单位模式。^MU 还允许以较低的分辨率打印 — 600 dpi 打印机能够以 300、200 和 150 dpi 打印;300 dpi 打印机能够以 150 dpi 打印。

我认为不可能

对 200 和 300 dpi 使用相同的标签,dpi 代表每英寸点数,您所要做的就是进行例如转换

矩形命令是

^FO0,0^GB700,0,3^FS
//that means
^startField,x,y^GBwidth,height,lineWeight^endField

在这种情况下,width = 700 点,这意味着对于 300dpi 打印机,这将需要 2.3 英寸,对于 200dpi 打印机,这将需要 3.5 英寸,所以如果你想在两个 pritner 中使用相同的长度,你可以这样做

700/300 = 2.3, so x/200 = 2.3 then x = 200 * 2.3 , x = 460

这意味着,如果您希望行长为 2.3in,则使用 300dpi 打印机width参数应为 700,对于 200dpi 打印机,参数应为 460。

希望这有帮助

这是一个可能对您有所帮助的模拟器

http://labelary.com/viewer.html?density=8&width=4&height=6&units=inches&zpl=%5EXA%0A%0A%5EFO0%2C0%5EGB700%2C0%2C3%5EFS%0A%0A%5EXZ

对于 c# 用户:Isatufan制作了一个ZPL-Handler,它通过给定的因子缩放ZPL的所有属性:

https://gist.github.com/isatufan/e22dc07ac7968fcb8e9a6046fa15f57a

并非所有 ZPL 命令都被处理,但很容易添加缺少的命令。

根据原始的ZPL圣经,可以降低转换。

我将所有标签保留在 300 中,因为这里的大多数打印机都是 300,而那些应用程序检测到较低分辨率打印机的打印机会添加以下行:

^MUd,200,300

https://www.zebra.com/content/dam/zebra/manuals/printers/common/programming/zpl-zbi2-pm-en.pdf