将 PCL 转换为 PDF

问题描述 投票:0回答:4

我希望创建(作为概念验证)一个 OCaml(最好)程序,将 PCL 代码转换为 PDF 格式。我不知道从哪里开始。是否有这样做的标准化算法?对于完成这项任务还有其他建议吗?

谢谢!

pdf ocaml ghostscript printer-control-language
4个回答
2
投票

将 PCL 转换为 PDF 可能非常复杂(假设您需要它是通用的,而不仅仅是简单的 PCL)。我们对此进行了多次投资,最终总是转而使用其他工具。我们不断进行调查,因为我们是一家开发公司,非常详细地使用和了解 PCL 的所有元素。如果您不太熟悉 PCL,这将是一项艰巨的任务。主要问题之一是,随着时间的推移,打印机在很大程度上已经变得能够容忍格式错误的 PCL,因此,创建遵循法律条文规则的东西并不总是足够的。如果;然而,您可以控制 PCL,您也许能够成功地解决它。

我并不是想让你放弃这个,我意识到你来这里是为了寻找编程答案,但我不得不说,这是一项远非简单的任务,而且没有“标准化算法”(我知道)。

如果这是一个与您正在构建的其他东西一起工作的工具,我强烈建议您看看这些人:

PageTech

这是迄今为止用于处理此问题的最完整的工具集(Windows)。还有其他一些,但根据我们多年来对 PCL 和转换工具的广泛使用,这是唯一始终有效的。

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


2
投票

Ghostscript 开发人员最近将其姐妹产品 GhostXPS、GhostPCL 和 GhostSVG 集成到他们的 Ghostscript 源代码树中。 (现在称为 GhostPDL。)因此,现在可以从那里使用所有这些附加功能(加载、渲染和转换 XPS、PCL 和 SVG)。

这意味着您可以从他们的源代码构建他们的语言切换二进制文件。理论上,这可以使用 PCL、PDF 和 PostScript,并将其转换为许多其他格式。虽然它在我需要时对我有用,但 Ghostscript 开发人员建议停止使用语言切换二进制文件(因为它“几乎不受支持”——请参阅 KenS 对此答案的评论),而是切换到使用显式二进制文件

pcl6.exe
(PCL 输入)、
gsvg.exe
(SVG 输入,也“几乎不受支持”)和
gxps.exe
(我不清楚支持状态)。

因此,要按照请求区域“将 PCL 代码转换为 PDF 格式”,您可以使用

pcl6
命令行实用程序,它是 Ghostscript 的姐妹产品
gs/gswin32c.exe

示例命令行:

 pcl6.exe  \
  -o output.pdf  \
  -sDEVICE=pdfwrite  \
   [...more parameters as required (optional)...]  \
  -f input.pcl

已更新按照KenS在评论中的提示....


1
投票

HP有一系列参考书;你可以重新实现一个PCL解析器并输出相应的PDF。

您可以从“PCL 5 打印机语言技术参考手册”(http://h20000.www2.hp.com/bc/docs/support/SupportManual/bpl13210/bpl13210.pdf) 开始。搜索 HP 了解更多信息 (http://search.hp.com/query.html?qt=PCL+reference)。

或者您可以从 GhostPCL 窃取代码或想法 (http://www.ghostscript.com/GhostPCL.html)


0
投票

要将 PCL 代码转换为 PDF 格式,我强烈建议使用 VeryPDF PCL to PDF Converter 软件。它提供了一种简单高效的解决方案,可以轻松将 PCL 文件转换为 PDF。

对于您的 OCaml 程序,虽然我不知道专门用于 PCL 到 PDF 转换的标准化算法,但您可以探索将 VeryPDF 的 PCL 到 PDF 转换器集成到您的 OCaml 项目中。该软件提供全面的文档和支持,使您更轻松地完成任务。

© www.soinside.com 2019 - 2024. All rights reserved.