2

我使用 Zebraprinter 打印标签。我的打印机是 203dpi。最近几天我在互联网上搜索,我发现有 Zebraprint 实用程序.. 可以转换为 DFR 格式.. 这很糟糕.. 他们没有完全解释如何做到这一点.. 他们只是说转换为~DG format.. 任何打印它,这不会发生!相反,我想将 png 文件转换为 .GRF 文件并发送到打印机进行打印。互联网上是否有任何致命的免费软件可以满足我的需求,另外,我厌倦了开发一个可以完成这项工作的软件打印字母..接线很好。我不知道如何使用这台打印机打印图片。我需要将此图像https://imageshack.com/i/pb0BArbep转换为.GRF 格式. 我怎么能在一个按钮按下下完成所有这些..任何帮助..

非常感谢。

代码片段:-

private void button2_Click(object sender, EventArgs e)
    {
        string s = Print();
        PrintFactory.sendTextToLPT1(s);
    }

 private string Print()
    {
        string s = "";
        s += "^XA^LH"+ text.textbox + ".GRF,1,1^FS";

        s += "^FO250,294^FD^FS";
        s += "^XZ";
        return s;
    }
4

1 回答 1

1

自从被问到这个问题已经一个月了,所以我不知道是否仍然需要答案,但我会试一试。我最近实际上一直在对 ZPL 进行大量研究(这是我遇到这个问题的原因之一),我不得不做类似的事情。实际上,还有一台 203 dpi 打印机。我不确定如何将 PNG 转换为 GRF,但我能够仅使用 PNG 打印出图形:

^XA
^MNY
^LL203
~DYE:{name},P,P,{file size},,{data}
^XZ

^MN 与媒体跟踪有关,您可能需要对其进行一些更改以满足您的需要,具体取决于标签。与 ^LL 相同,它指定标签长度。对于 8 点/毫米 (203 dpi),您用作参数的值由 203.2 * 标签长度(以英寸为单位)计算。之后,有一些值可以插入 ~DY(下载图形,手册第 112 页),其中第一个是您要用来引用文件的名称。我没有添加文件扩展名,因为打印机似乎为我这样做了,因为我在参数中指定它是 PNG。第二个是 PNG 文件的大小(以字节为单位)。最后,来自文件的实际数据以 ASCII 十六进制的形式。现在将文件保存在打印机上,然后我可以使用以下脚本在脚本中打印图形:

^IME:{name}.PNG
^FS

注意:将文件上传到打印机后,我可以通过在浏览器中通过 IP 连接到打印机并转到“目录列表”来确认它确实保存为 PNG 文件。我不确定是否所有这些打印机都具有此功能,但我使用的那台有。如果是这样,您可以使用它来确认文件已正确上传。(它应该在板载闪存中)

希望这可以帮助!

我使用的手册在这里。我还遇到了许多其他对 StackOverflow 有所帮助的问题,以及其他论坛上的一些主题。可以在此处找到一个也在 C# 中对我有很大帮助的问题。

于 2014-11-13T20:07:23.170 回答