0
ll_printed = dw_1.print(FALSE)

IF ll_printed = 1 AND FileLength64(gs_TmpFile) > 100000 THEN

ls_run =gs_GhostScript_Path + "gswin32c -q -sDEVICE=pdfwrite
-sOutputFile=" + gs_TmpFile + ".pdf " + " -dBATCH -dNOPAGEPROMPT -dNOPROMPT-dQUIET -dNOPAUSE" +' ' + gs_TmpFile

END IF

我得到了这个脚本来检查文件长度,我总是生成一个 11kb 的 PS。如果我继续创建 pdf。它将创建一个空白 PDF。有时它实际上打印正确的信息,有时它是空白的。

4

1 回答 1

0

好吧,您似乎正在测试 gs_TmpFile 的大小以查看它是否超过 100,000 字节,但您说您总是生成一个 11Kb(11264 字节)的 PostScript 程序,所以我看不出您是如何设法在那个案子。

我猜您的临时文件仍然不完整,或者不包含您认为的内容。

当然,您已经设置了 -dQUIET,抑制了消息,并且没有费心提供(甚至捕获)Ghostscript 脚本。很可能那里有什么东西可以给你一个线索,但由于你没有提出它,所以没有人能说出来。

你需要自己做更多的调试。您应该在调用 Ghostscript 时捕获 PostScript 程序(将其复制到新文件),并捕获 Ghostscript 输出。然后检查创建的 PDF 文件,直到遇到错误情况。

当您遇到错误情况时,您可以将发送到 Ghostscript 的 PostScript 程序与工作版本进行比较,并且您将获得 Ghostscript 希望您了解的任何信息,这可能有助于您调试问题。

这里确实没有足够的信息来提供更多帮助。

于 2017-11-12T13:46:31.560 回答