将Informix文件转换为pdf

问题描述 投票:1回答:2

是否可以直接从Informix将文件转换为PDF?有命令吗?如果不可能,那我该怎么办?例如:我想将文件sm2026.4gl转换为PDF。

pdf informix
2个回答
0
投票

我不确定我是否正确理解了这个问题,看起来你正试图获得一个4GL程序的PDF版本,这没有任何意义。有任何数量的free websites可以为你做这件事。

但是,如果你问如何获得4GL报告来生成PDF,这是一个更有趣的问题。 Informix-4GL本身不会编写PDF文件。如果我没记错的话,4Js Genero会和Querix Lycia一样。

但是,在Linux上,有一个PDF打印机驱动程序(cups-pdf)将报告输出到PDF文件。

执行此操作留给读者练习。 :-)


0
投票

您可以选择多种选择。您选择的将取决于您准备投入多少时间和金钱。您准备投入的越多,您将获得更好的报告

  1. 谷歌搜索将采用文本文件并转换为PDF的脚本/可执行文件。示例包括txt2pdf。这些工作在任何文本文件上,因此独立于4gl。您将在完成报告后立即修改您的4gl代码以通过RUN执行此操作
  2. 编写4gl库以创建有效的PDF输出。这涉及到您阅读PDF手册以查看PDF文件中所需的结构。生成的文件的第一行将以“%PDF”开头。这是很多工作,我在15 - 20年前做过,除非你想要控制和独立性,否则我不会再做了。
  3. 使用FourJs Genero等产品,您可以使用现有的4gl代码直接创建PDF报告。最简单的方法是在START REPORT之前添加几行,并保持REPORT语句不变。该报告将使用等宽字体,看起来像您现有的报告,只是它是PDF而不是TXT文件。 IF fgl_report_loadCurrentSettings(NULL) THEN -- simple compatibility mode CALL fgl_report_selectDevice("PDF") -- indicates PDF ... -- optional calls to indicate filename, paper, printer and other options if required LET grw = fgl_report_commitCurrentSettings() START REPORT report-name TO XML HANDLER grw

使用此选项可以使用一些额外的配置选项,例如向您找到的免费工具可能无法提供的每个页面添加水印/徽标

  1. 使用FourJs Genero Report Writer的功能更丰富的选项包括从您的4gl代码中删除任何布局信息,并在WYSIWYG设计器中设计报表的布局。您收集数据库中数据的4gl代码以及表示输出的函数不受影响。 REPORT语句不再需要布局信息,例如COLUMN 10,SKIP TO TOP OF PAGE,并且可以删除。报告的WYSIWYG设计控制布局,包括全部属性,如字体,字体属性,定位,分页符,页面编号,图像。所以你的4gl代码就变成了 -- Report -- No layout information in report, only need to gather and formulate data REPORT report-name ... BEFORE GROUP OF invoice PRINT invoice.* ON EVERY ROW PRINT invoice_line.* AFTER GROUP OF invoice LET invoice_total.net = GROUP SUM(...) PRINT invoice_total.* END REPORT ... -- Produce report IF fgl_report_loadCurrentSettings("reportdesign.4rp") THEN -- load the WYSIWYG design CALL fgl_report_selectDevice("PDF") -- indicates PDF ... -- calls to indicate filename, paper, printer and other options if required LET grw = fgl_report_commitCurrentSettings() START REPORT report-name TO XML HANDLER grw

如图所示,您可以使用多种选项。至于你应该做什么,这取决于你的目标是什么,以及你准备投入多少时间和金钱来实现这一目标。

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