首页 > 解决方案 > 这个 Python ghostscript 脚本有什么问题?工作一次但不是两次

问题描述

我正在尝试使用 ghostscript 将 pdf 转换为 jpg,但那里没有很多文档或示例。

我使用了这个可以运行一次的常见示例,但如果我再次运行,我会收到一个致命错误:

args = ["pdf2jpeg", # actual value doesn't matter
        "-dNOPAUSE",
        "-sDEVICE=jpeg",
        "-r300",
        "-sOutputFile=" + file_out, file_in]

encoding = locale.getpreferredencoding()
args = [a.encode(encoding) for a in args]
ghostscript.Ghostscript(*args)

它写入输出文件,但是当我第二次运行时,我得到了这个:

  File "C:\Users\chuck\Documents\projects\Table extraction\test\ghost_opencv.py", line 53, in <module>
    ghostscript.Ghostscript(*args)

  File "C:\Users\chuck\Anaconda3\lib\site-packages\ghostscript\__init__.py", line 171, in Ghostscript
    return __Ghostscript(__instance__, args,

  File "C:\Users\chuck\Anaconda3\lib\site-packages\ghostscript\__init__.py", line 74, in __init__
    rc = gs.init_with_args(instance, args)

  File "C:\Users\chuck\Anaconda3\lib\site-packages\ghostscript\_gsprint.py", line 273, in init_with_args
    raise GhostscriptError(rc)

GhostscriptError: Fatal

此外,当我打开 IDE(Spyder)时,我无法删除输出文件。就像 IO 进程仍然打开一样。所以我相信我需要创建一个实例然后退出(),但我不清楚如何做到这一点。

文档在这里,有一些例子,但我不知道该怎么做。

https://gitlab.com/pdftools/python-ghostscript/-/tree/master/

标签: python-3.xghostscript

解决方案


推荐阅读