准备ZPL命令以打印单色铬位图图像

我在准备用于在Zebra RZ400 300 dpi上打印位图图像的ZPL命令时遇到问题。

我有folling代码片段,我不明白我在哪里犯了错误。

var bitmapImagePath = @"C:\Sample.bmp"; //Gets the size of the bitmap file long bitmapDataFileSize = new FileInfo(bitmapImageFilePath).Length; byte[] bitmapData = System.IO.File.ReadAllBytes(bitmapImageFilePath); string hexadecmimalString = BitConverter.toString(bitmapData).replace("-", string.empty); double widthInBytes = Math.Ceiling(bitmapDataWidth / 8.0); string str = ""; return str = "^XA^FO100,100^GFA," + //At Postion 100, 100 bitmapDataSize.ToString() + "," + // Total bytes of data to be placed bitmapDataSize.ToString() + "," + // Total bytes of data to be placed, repeats as per API widthInBytes + "," + // hexadecmimalString + "^XZ"; 

你能告诉我哪里出了问题吗? 我可以使用Multiplat表单SDK API打印,但我只对符合我要求的^ GFA或^ GFB命令感兴趣。

请建议我准备打印任何给定图像的^ GF命令。

https://stackoverflow.com/questions/7083180/print-bmp-with-zpl?rq=1

这应该为你做的伎俩。 由于您是新会员,我强烈建议您使用搜索function。

这一行:

 var bitmapImagePath = :C:\\Sample.bmp"; 

应该

 var bitmapImagePath = @"C:\Sample.bmp"; 

您可能有两个选择。

如果您不需要使用ZPLII,则可以使用Zebra驱动程序安装打印机。 这将允许您像使用常规桌面打印机一样使用Zebra打印机。 然后,您可以使用标准的.Net函数构建标签进行打印,并将文档作为常规文档以编程方式发送到打印机。

如果这不是一个选项,你需要创建一个单色位图,我自己从来没有这样做过。 但是,如果您不想编写转换器,可以使用img2grf进行转换。 您需要将该库转换为.Net程序集,这可以通过使用IKVM轻松实现。 有关如何使用IKVM的说明,只需访问带有IKVM的HtmlUnit转换,并按照“将HtmlUnit转换为.NET”部分中的说明进行操作,这与转换img2grf的过程相同。