从 c# 在 ZPL 打印机上进行编程切割
Programmatic cutting on a ZPL printer from c#
我正在用 C# 开发一个程序来处理 UPS 的运输请求,在客户数据库中注册它们并将新标签发送到联网的 ZPL 打印机。
我们正在使用带切纸器的 GX420T Zebra 打印机。通过 IP 打印标签没有问题。
我在切割标签时遇到问题。客户希望连接每批货件的标签,但与其他货件的标签分开。 (即仅在打印完所有货件标签后才切割)对于单个标签的货件,标签按预期切割。对于多个标签的发货,切纸器永远不会运行。
bool print = true; //true: If printing fails on the first label,
// do not try the rest.
//false: do not print
//Set printer mode
print = parseZPL.printZPL_IP(@"^XA^MMD^XZ");
//Save and print Package labels
foreach (XElement package in Packages)
{ //Parse XML
if (package.Name.LocalName == "PackageResults")
{
//Pulling Package and Shipping label information from XML
string ShippingLabel = package.Element(ship + "ShippingLabel").Element(ship + "GraphicImage").Value;
//convert string to Base64
byte[] ZPLbytes = Convert.FromBase64String(ShippingLabel);
if (print)
{
print = parseZPL.printZPL_IP(System.Text.Encoding.ASCII.GetString(ZPLbytes));
}
}
};
if (print)
{
print = parseZPL.printZPL_IP(@"~JK");
}
我尝试在 ~JK 命令之前添加一个 sleep() 命令,但没有成功。我已经搜索了 ZPL 文档,但没有找到有效的解决方案。
如有任何建议,我们将不胜感激。谢谢!
打印一批标签时,我觉得你需要在第一个标签的开头设置^MMT
(撕下),在最后一个标签的开头设置^MMC
(剪切) .
我正在用 C# 开发一个程序来处理 UPS 的运输请求,在客户数据库中注册它们并将新标签发送到联网的 ZPL 打印机。
我们正在使用带切纸器的 GX420T Zebra 打印机。通过 IP 打印标签没有问题。
我在切割标签时遇到问题。客户希望连接每批货件的标签,但与其他货件的标签分开。 (即仅在打印完所有货件标签后才切割)对于单个标签的货件,标签按预期切割。对于多个标签的发货,切纸器永远不会运行。
bool print = true; //true: If printing fails on the first label,
// do not try the rest.
//false: do not print
//Set printer mode
print = parseZPL.printZPL_IP(@"^XA^MMD^XZ");
//Save and print Package labels
foreach (XElement package in Packages)
{ //Parse XML
if (package.Name.LocalName == "PackageResults")
{
//Pulling Package and Shipping label information from XML
string ShippingLabel = package.Element(ship + "ShippingLabel").Element(ship + "GraphicImage").Value;
//convert string to Base64
byte[] ZPLbytes = Convert.FromBase64String(ShippingLabel);
if (print)
{
print = parseZPL.printZPL_IP(System.Text.Encoding.ASCII.GetString(ZPLbytes));
}
}
};
if (print)
{
print = parseZPL.printZPL_IP(@"~JK");
}
我尝试在 ~JK 命令之前添加一个 sleep() 命令,但没有成功。我已经搜索了 ZPL 文档,但没有找到有效的解决方案。
如有任何建议,我们将不胜感激。谢谢!
打印一批标签时,我觉得你需要在第一个标签的开头设置^MMT
(撕下),在最后一个标签的开头设置^MMC
(剪切) .