【问题标题】:Convert pcl to image将 pcl 转换为图像
【发布时间】:2014-07-22 01:02:54
【问题描述】:

我正在通过 RS232 与逻辑分析仪 (HP 1660A) 通信。我发出一个命令,告诉分析仪打印屏幕并通过串行通信将其发送到控制器(我的电脑)。我将结果(通常约为 25kB)保存到我的计算机中,我想将其视为 TIFF 或其他格式。问题是分析仪的响应是 PCL 格式的,因此适合发送到打印机并直接打印,但不能作为图像打开。我已经尝试了一些 PCL 到图像转换器来完成这项工作,我找到了一个可以正常工作的,但是我使用了试用版并且我不愿意购买它。我已经给你介绍了我的工作背景。我将不胜感激任何形式的帮助,参考 pcl 1 中的命令以及我应该怎么做才能从 PCL 文件中提取数据并正确格式化。我对 PCL 和图像处理没有任何经验,所以请帮帮我。谢谢。

附:我已经从分析器中获得了 C# 和 matlab 中的 PCL 文件......我在 C# 中使用串行端口控制有一个小问题,当使用上述转换器时,某些图像在图像中有一些未解释的字符。我说所有这些是因为我需要一个算法或一些指示,无论是哪种编程语言,所以请随时发布。

【问题讨论】:

    标签: printer-control-language


    【解决方案1】:

    PCL 阅读起来很复杂。只有少数工具可以很好地完成此任务。我们拥有大量 PCL 专业知识,并且仍然经常寻求其他提供 PDF 和其他格式的转换。如果 PCL 非常简单,即只有文本、一些字体和一两个图形,则几个 RegEx 命令可以处理文本的提取,然后您可以使用任何您希望的工具模拟一个新文档.

    在 stackoverflow 中查看这些文件可能很困难。如果您可以在 ftp 上获取它们并发布链接,我可以快速查看并在此处发布我的发现/想法。另一种选择是寻找外部工具。我们已经取得了一些成功。我们的需求很广泛,所以我选择了一种最适用于许多不同 PCL 流的方法(某些 PCL 编码比其他编码更好)。当您处理已知数量的 PCL 时,您可能有几个选择。以下是我们已经使用并取得一些成功的一些(按对我们有用的顺序)

    PCLWorks by PageTech(他们有一个 GUI 查看器和完整的 SDK)

    VeryPDF PCL Converter(命令行工具)

    SwiftView

    还有其他的,甚至是处理 PCL 的 Ghostscript 的开源变体(我们从来没有这么幸运,因为我们使用的 PCL 经常包含非常自定义的字体、符号集和大量似乎令人窒息的宏。

    GhostPCL

    编辑:最近我们一直在使用 LincPDF (http://www.lincolnco.com/)。这也是一款优秀的产品,有一个很大的好处,部署简单。其他一些工具具有复杂的软件安装。这个解决方案对我们来说很容易部署为应用程序中的一个功能。它也比我们迄今为止测试过的任何工具都更快(至少使用我们从应用程序生成的 PCL,因为它们包含专门的字体和宏,所以相当复杂)。

    【讨论】:

    • 我建议寻找 PCLWorks 以外的其他地方。它可能曾经是一个血统产品,但该产品看起来像是从 70 年代开始的,并且非常缺乏 BP 的支持。如果有人知道的话,我仍在寻找血统产品。
    【解决方案2】:

    根据 HP 1660 (pdf) 系列的规格表可以发送 TIFF、PCX 和 postscript。

    使用 TIFF 不是更容易吗?

    【讨论】:

      【解决方案3】:

      该项目被搁置了一段时间,但我想提供一个完整且可用的解决方案。

      @阿德里安 您可以将图像保存到软盘,我已经这样做了,将其保存为 TIFF,一切正常。不幸的是,它只通过 RS232 发送 PCL。通过串行通信保存打印屏幕的想法是避免使用过多的软盘,设备用于启动。

      @道格拉斯 谢谢你详尽的回答。我将看一下指定的工具,但是,我希望提供一个完整的前端解决方案,它可以直接生成图形。我已经从我的测试here 中放置了一些文件,以查看 PCL 结构的复杂性。您是否知道我可以集成到我的应用程序中的可能的 API,它可以解析文件并解释 PCL?

      问候, 科斯敏

      【讨论】:

        【解决方案4】:

        我们通过监视 COM1: 的串行假脱机程序捕获串行输入。它被称为 SSpool.exe。它将 PCL 作为输入重定向到 PCLXForm。 PCLXForm 将其转换为任何光栅格式(TIFF、JPG、PDF、BMP 等)。但是,我们也可以在转换过程中提取文本,我们可以从 PCL 中提取单个光栅对象,以便在下游应用程序中重新排列。我们的定价模型适用于需要每月将多达 50,000 页发票转换为索引 PDF 的被许可人。但是,这种类型的应用程序通常需要自定义许可证才能将我们的定价降低到所需的水平。为了做到这一点,我们经常不得不限制我们的产品转换无限的文件,但只能在任何一个 PCL 打印文件中的第 20 页内转换。这提供了足够的页面量,并使我们能够降低单位价格。要进行演示,您需要 PCLTool SDK。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2010-10-14
          • 2015-03-26
          • 2011-07-09
          • 2018-01-17
          • 1970-01-01
          • 2011-07-03
          • 1970-01-01
          相关资源
          最近更新 更多