Tag: zpl

开发用于渲染Zebra打印机的ZPL代码的实用程序(105 SL)

可能重复: 使用.NET WinForm打印预览ZPL II命令,然后再将其发送到Zebra打印机 我开始在.NET 4.0上为Zebra Printer 105SL开发一个实用程序。 也许有人知道这些设备。 我有一些问题: 我刚开始学习ZPL代码。 是否存在一些用于渲染 Zebra打印机代码(ZPL)的实用程序 ? 例如,输入是ZPL代码,输出是一些标签图像。 它是否存在用于呈现 ZPL代码的库 ? 输入是ZPL代码输出的是一些图像。 现在只有当Zebra打印机安装在计算机上时,我才能在Zebra打印机上打印。 因此,下一步是只知道Zebra打印机的IP地址 。 Zebra打印机不会安装在用户将使用我的实用程序的计算机上。 我需要找到一种通过IP地址向Zebra打印机发送数据(打印)的方法。 也许我有很多愚蠢的问题,但感谢所有帮助我的人。

增加图像的分辨率(dpi)

我不确定没有一些第三方库会有多可行,但是这里有: 我有一个450×900的图像,我试图打印。 问题是,我用来打印的方法是将原始数据发送到打印机。 图像分辨率为96dpix96dpi,打印机运行速度为203dpi。 所以……图像很小。 我需要增加图像的dpi,以“真实”的尺寸打印它。 Bitmap b0 = LoadBitmap(); //I need to rotate it because for some odd reason it prints backwards and upside down. b0.RotateFlip(RotateFlipType.Rotate180FlipX); //Set a new resolution, 203dpi b0.SetResolution(203, 203); //I need to save and reload the bitmap, because RotateFlip compresses it. //(annoying as hell, took me ages to figure out […]

我需要设置哪些Zebra QLn220设置(以及设置为“粘贴”的值)?

我正在尝试以编程方式配置Zebra QLn220打印机,将其“media.sense_mode”设置为“bar”或“gap”(取决于用户选择的内容)。 然而,这些命令工作的可靠性似乎非常低(有时它可以工作,有时它不工作)。 为了测试各种可能的命令,我使用了Zebra Setup Utilities,当然PC也插在了打印机上。 我从util发送了这个命令: ! U1 setvar “media.sense_mode” “gap” 有效; 我知道这一点,因为测试它: ! U1 getvar “media.sense_mode” ……向我展示了预期/希望的“差距”(在发送上述命令之前一直是“bar”)。 但是试图在代码中完成同样的事情是为了“bar”(几乎总是),但几乎没有“差距” 这是代码: const string quote = “\””; string advanceToBlackBar = string.Format(“! U1 setvar {0}media.sense_mode{0} {0}bar{0}\r\n”, quote); string advanceToGap = string.Format(“! U1 setvar {0}media.sense_mode{0} {0}gap{0}\r\n”, quote); . . . if (radbtnBar.Checked) { PrintUtils.SendCommandToPrinter(advanceToBlackBar); } else if (radbtnGap.Checked) […]

为什么Zebra QLn220打印机在发送更新某些设置的命令后会忽略发送给它的前几个命令?

我正在向Zebra QLn220发送命令,以便它(自然地)打印标签。 不过,我也有代码为某些打印机设置分配值,例如: const string quote = “\””; string keepPrinterOn = string.Format(“! U1 setvar {0}power.dtr_power_off{0} {0}off{0}”, quote); string advanceToBlackBar = string.Format(“! U1 setvar {0}media.sense_mode{0} {0}bar{0}”, quote); string advanceToGap = string.Format(“! U1 setvar {0}media.sense_mode{0} {0}gap{0}”, quote); PrintUtils.SendCommandToPrinter(keepPrinterOn); if (radbtnBar.Checked) { PrintUtils.SendCommandToPrinter(advanceToBlackBar); } else if (radbtnGap.Checked) { PrintUtils.SendCommandToPrinter(advanceToGap); } 这有效 – 在运行了检查了radbtnBar的代码之后,这些设置现在(通过在Zebra Setup Utilities应用程序中运行“ !U1 getvar”allcv“ ”看到): […]

将PNG图像打印到斑马网络打印机

我试图找到一种将图像打印到斑马并且遇到很多麻烦的方法。 根据文件: 第一种编码称为B64,使用MIME Base64方案对数据进行编码。 Base64用于编码电子邮件地址… Base64对该字节进行6位编码,对未封闭数据的扩展为33%。 第二种编码称为Z64,首先使用LZ77算法压缩数据以减小其大小。 (该算法由PKZIP使用,与PNG图形格式是一体的。) 然后使用如上所述的MIME Base64方案对压缩数据进行编码。 将根据Base64编码的数据计算CRC。 但它没有更多的信息。 基本上我正在尝试编码 private byte[] GetItemFromPath(string filepath) { using (MemoryStream ms = new MemoryStream()) { using (Image img = Image.FromFile(filepath)) { img.Save(ms, ImageFormat.Png); return ms.ToArray(); } } } 然后尝试使用以下内容进行打印: var initialArray = GetItemFromPath(“C:\\RED.png”); string converted = Convert.ToBase64String(b); PrintThis(string.Format(@”~DYRED.PNG,P,P,{1},0,:B64: {0} ^XA ^F0200,200^XGRED.PNG,1,1^FS ^XZ”, converted .ToString(), initialArray.Length)); […]