将ZPL字符串转换为JPG图像和PDF

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将ZPL字符串转换为JPG图像和PDF相关的知识,希望对你有一定的参考价值。

下午好,

我目前正在开发一个动态生成ZPL字符串的项目。您可以在下面看到一个示例,您可以使用http://labelary.com/viewer.html查看标签。有没有可以将ZPL字符串翻译成JPG图像或PDF文件的软件?

"^XA^FX Top section with company logo, name and address.^CF0,60^FO50,50^GB100,100,100^FS^FO75,75^FR^GB100,100,100^FS^FO88,88^GB50,50,50^FS^FO220,50^FDInternational Shipping, Inc.^FS^CF0,40^FO220,100^FD1000 Shipping Lane^FS^FO220,135^FDShelbyville TN 38102^FS^FO220,170^FDUnited States (USA)^FS^FO50,250^GB700,1,3^FS^FX Second section with recipient address and permit information.^CFA,30^FO50,300^FDJohn Doe^FS^FO50,340^FD100 Main Street^FS^FO50,380^FDSpringfield TN 39021^FS^FO50,420^FDUnited States (USA)^FS^CFA,15^FO600,300^GB150,150,3^FS^FO638,340^FDPermit^FS^FO638,390^FD123456^FS^FO50,500^GB700,1,3^FS^FX Third section with barcode.^BY5,2,270^FO175,550^BC^FD1234567890^FS^FX Fourth section (the two boxes on the bottom).^FO50,900^GB700,250,3^FS^FO400,900^GB1,250,3^FS^CF0,40^FO100,960^FDShipping Ctr. X34B-1^FS^FO100,1010^FDREF1 F00B47^FS^FO100,1060^FDREF2 BL4H8^FS^CF0,190^FO485,965^FDCA^FS^XZ"

我正在寻找最有效的方法。我可以使用http://labelary.com api将ZPL转换为JPG,但API经常出现故障,因此欢迎任何有关库的建议。但是,我们不是在寻找图书馆,而是建议将ZPL字符串转换为PDF / JPG

请记住,我们正在使用.NET Core

答案

经过一些研究,似乎有两种方法可以做到这一点。

使用labreary api的休息电话:

byte[] zpl = Encoding.UTF8.GetBytes("^xa^cfa,50^fo100,100^fdHello World^fs^xz");

// adjust print density (8dpmm), label width (4 inches), label height (6 inches), and label index (0) as necessary
var request = (HttpWebRequest) WebRequest.Create("http://api.labelary.com/v1/printers/8dpmm/labels/4x6/0/");
request.Method = "POST";
request.Accept = "application/pdf"; // omit this line to get PNG images back
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = zpl.Length;

var requestStream = request.GetRequestStream();
requestStream.Write(zpl, 0, zpl.Length);
requestStream.Close();

try {
    var response = (HttpWebResponse) request.GetResponse();
    var responseStream = response.GetResponseStream();
    var fileStream = File.Create("label.pdf"); // change file name for PNG images
    responseStream.CopyTo(fileStream);
    responseStream.Close();
    fileStream.Close();
} catch (WebException e) {
    Console.WriteLine("Error: {0}", e.Status);
}

如果您不能依赖Web服务并且需要能够在不发送外部请求的情况下进行呼叫。

我可以在本地使用Labelary引擎,而不依赖于公共Web服务吗?

我们提供许可供本地使用的Labelary引擎的离线版本。请联系我们获取许可信息。 http://labelary.com/faq.html

这允许我们为没有斑马打印机的客户打印PDF和PNG。

以上是关于将ZPL字符串转换为JPG图像和PDF的主要内容,如果未能解决你的问题,请参考以下文章

无法使用 ImageMagick 和 GhostScript 将 PDF 转换为 JPG

PDF2JPG-使用ImageMagick将PDF转换为JPG图像

PHP PDF2JPG - 使用ImageMagick将PDF转换为JPG图像

sh 按文件名顺序将图像转换为PDF,文本前缀和数字后缀,如Untitled-0.jpg,Untitled-1.jpg等。

怎么用ABBYY将PDF转换为JPEG图像

ImageMagick:将PDF转换为图像