【问题标题】:Can a circle be printed/drawn in a printfile with DDS?可以使用 DDS 在打印文件中打印/绘制圆圈吗?
【发布时间】:2021-05-28 19:51:01
【问题描述】:

使用 DDS,我知道我可以使用 BOX 关键字打印一个盒子并为其着色:

A          R BOX5                      BOX(2.5 0.5 5.1 6.3 0.2 +
A                                      (*COLOR *HIGHLIGHT 3 75)

有没有类似创建圈子的东西?

【问题讨论】:

    标签: printing ibm-midrange rpgle


    【解决方案1】:

    根据DDS Reference:没有。我找不到任何关键字直接画圆。

    我的猜测是,在 impact printers 的大容量鼎盛时期,没有快速的方法来打印这样的圈子。注意:影响不一定与点阵打印机相同。不过,可以使用特殊字符来换行。引导这种打印机的“语言”称为 SCS (SNA Character String)。

    但是您可以使用外部程序根据需要创建一个圆圈,使用specialized IBM software 将结果转换为页面段,然后通过 DDS 将其加载到页面上。有关信息和注意事项,请参阅链接文档中的 PAGSEG 关键字。特别是需要使用 AFP 可能会造成严重的障碍。 (AFP — 过于简化,因此并不完全正确 — 就像 PCLPostScript,一种页面描述语言。IPDS 可以大致等同于 PJL。)理光打印机有时具有原生 IPDS/法新社支持。此外,还有一些转换器盒制造商,将 SCS 甚至 IPDS/AFP 打印机伪装成主机端,并将 PJL/PCL 打印机数据生成器伪装成打印机。

    可以为打印机设备启用的内置 Host Print Transform 功能将假脱机输出转换为 PCL,因此可以将其发送到库存打印机。缺点是,它使用了可能不需要的本地 CPU 资源。旧版本的操作系统可能仅支持带有主机打印转换的 SCS。

    较新的 IBM I 版本包括 InfoPrint Server,这是一个基于 java 的后台任务,能够将机器上的打印作业转换为 PDF。我认为这应该适用于法新社。不过,不是在谈论资源使用情况……

    在 IBM i 上打印本身就是一个很深的兔子洞。请参阅accompanying documentation

    【讨论】:

    • 谢谢你。也许我看错了。我们目前打印表格(使用 AFPDS),我们想在某些部分添加一些符号(不同颜色的小方块/框、不同颜色的大写字母和不同颜色的小圆圈)。我发现我可以使用 BOX 和 COLOR 关键字来处理方框和字母,这就是为什么我希望得到类似的答案。有没有更好的方法来获得我想要的东西?
    • 考虑将表单打印为 PDF 文档。我使用了jsPDF javascript 库。但是您可以使用PHP 来执行此操作。然后使用HTTPGETCLOB sql 函数调用 PHP 程序(Web 服务),该程序将创建 PDF 文件并将其写入 IFS。
    • @RockBoro 因为他在谈论 DDS,我假设他正在维护现有的应用程序。您的提案可能需要重大的应用程序重写。出于多种原因,这并不总是一种选择。
    • @geojf3:看我的回答,也许页面分段可能是前进的方向。
    • @geojf3 能否通过 AFP 获得所需的内容取决于您希望颜色、圆圈和大写字母的灵活性。我在 AutoCAD 中绘制表格时取得了很好的效果,使用通用 IBM 打印驱动程序将它们打印到彩色文件中作为覆盖,将该打印文件复制到成员,并运行 CRTOVL 以创建覆盖以覆盖打印文件。然后 IBM 的 CPYSPLF 或 Gumbo 的 SPLCONVERT 可以将图形放入 pdf 文件中。如果您只需要图形的固定位置,这很有效。如果您希望彩色圆圈与您的文本一起移动,这不是一个解决方案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-06
    • 1970-01-01
    • 2021-11-14
    • 2010-10-15
    • 1970-01-01
    相关资源
    最近更新 更多