PowerBuilder 12.5 Classic GhostScript空白pdf

时间:2013-10-14 22:27:31

标签: pdf ghostscript powerbuilder

我正在使用7 x32窗口。 PowerBuilder 12.5 Classic和GhostScript 9.1w32

我正在尝试更新过去使用Jaguar服务器生成PDF文档的旧脚本,但无论出于何种原因,不再支持/使用PB12.5。

我已安装GhostScript 9.1,注册表HKLM\SOFTWARE\GPL Ghostscript\9.1\GS_DLL指向gsdll32.dll,我有一台Sybase DataWindow PS打印机(根据this post使用Windows HP驱动程序)

我用来生成PDF的PB代码是:

lstr_pdf_props.s_string[1] = "filename.pdf"
...
dw_statement.Object.DataWindow.Export.PDF.Method = Distill!
dw_statement.Object.DataWindow.Export.PDF.Distill.CustomPostScript="No"
dw_statement.SaveAs(lstr_pdf_props.s_string[1], PDF!, false)

这样就完成了没有错误并且创建了一个3kb的C:\filename.pdf文件,但它是一个空白页面,文件在adobe reader中打开但是没有任何书写或任何打印,只是一个空白的白页。

有没有人对这里发生的事情有任何想法? 感谢。

3 个答案:

答案 0 :(得分:0)

我认为您的GhostScript版本错误。请在此处查看我的回答:

PowerBuilder 12.5 Classic PDF SaveAs creating files of 0 size on Win7 x64

溴。的Gabor

答案 1 :(得分:0)

当我交换使用GhostScript 8.71时,会发生相同的结果。

我最终做的是删除Sybase DataWindow PS打印机并使用内置的Adobe PDF驱动程序添加新打印机。然后将其命名为Sybase DataWindow PS。这不完美。但它现在确实在页面上打印内容而不仅仅是白色。 (使用GhostScript 8.71尚未使用9.1测试)

答案 2 :(得分:0)

Microsoft组策略设置会干扰Ghost脚本的使用 用于打印到PDF功能。

它被称为“阻止安装内核模式打印机驱动程序”。

要更正/检查是否已设置,请转到:

  1. 打开组策略(gpedit)如果您的网络管理员组拥有它,您将需要使用它们。
  2. 在“本地计算机策略”下,双击“计算机配置”。
  3. 双击“管理模板”,然后双击“打印机”。
  4. 右键单击“禁止使用内核模式驱动程序安装打印机”,然后单击“属性”。
  5. 在“设置”选项卡上,单击“禁用”,然后单击“确定”。 (您希望禁用此功能以使Ghost脚本工作)。
  6. 如果您的网络安全人员已经被带走,无论您尝试做什么,这都将会扼杀您的努力。

    希望这有帮助。

    顺利航行。