首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将.pdf转换为.zpl

将.pdf转换为.zpl
EN

Stack Overflow用户
提问于 2015-11-26 09:05:22
回答 1查看 23.7K关注 0票数 7

我需要将.pdf -file转换成用斑马打印机打印的.zpl -label文件,但这可能吗?

PDF以base64编码字符串的形式出现,不知何故,我需要将其作为.zpl -file输出。

我在我的项目中使用PHP,我更喜欢PHP中的方法,但基本上任何编程语言都可以,只要它完成了工作。

我正在考虑将PDF转换成图像(这似乎可以通过快速搜索),然后从图像(PNG,JPG,等等)。到ZPL(这似乎也可以通过快速谷歌搜索),但在我开始这么做之前,有没有人对这种操作有任何了解或者有任何见解?我的日程很紧,我负担不起任何徒劳无功的工作。

更新4.8.2016

我采用了另一种方式,从零开始创建了ZPL,因为它使我们的服务比进行一些转换更快。因此,如果有人想知道同样的事情,我没有比谷歌已经提供的信息更多的信息。PS。ZPL并不是一门很难的语言。;)

EN

回答 1

Stack Overflow用户

发布于 2021-10-10 16:32:59

我有一些问题要解决:拿一个PDF文件,转换成ZPL代码,并使用斑马打印机打印它。

由于堆栈溢出和ZPL程序设计指南,我了解了如何使用图形字段命令(^GF)嵌入位图。

基本上,您必须执行以下步骤:

  1. 将PDF文件呈现为位图
  2. 使它单色
  3. 将位图转换为ASCII十六进制(由ZPL定义)
  4. 压缩ASCII十六进制(否则我们的打印机就会遇到兆字节的位图数据)
  5. 将数据放入代码模板^XA^GFA{some parameters and tons of bitmap data}^XZ

我们的服务运行在ASP.NET上,所以我编写了一个C#库就是这样做的。它封装对谷歌的PDFium的本机调用以进行呈现,并返回一个字符串,其中包含用于打印的有效ZPL代码。

您可以像这样转换base64编码的PDF文件:

代码语言:javascript
复制
public static string GetZplCode(string pdfBase64, int page = 0, int dpi = 203)
{
    return PDFtoZPL.Conversion.ConvertPdfPage(pdfBase64, page: page, dpi: dpi);
}

我希望这个nuget包将防止其他人花费数周时间搜索如何使这个^GF命令工作。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33934364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档