首页 > 解决方案 > 将 PDF 转换为 EPS 时 Ghostscript 挂起

问题描述

很长一段时间以来,我一直在使用 Ghostscript 将 PDF 文件转换为 EPS,但现在我收到PDFsharp了在尝试将它们转换为 CMYK EPS Ghostscript 时生成的 CMYK PDF 文件,它永远挂起,我没有收到任何错误或消息所以我真的不知道发生了什么。

我要转换的 PDF 文件就是这个,它在 AI、Photoshop、Chrome 和 Foxit Reader 中打开得很好,所以我认为 PDF 没有损坏或格式错误。

我使用以下命令在 Windows 上尝试了 Ghostscript 9.52 和 9.23:

gswin32c -dNOCACHE -dNOPAUSE -dBATCH -dSAFER -sDEVICE=eps2write -sOutputFile="out.eps" in.pdf

添加-dDEBUG标志后,我可以看到该过程卡在这里:

在此处输入图像描述

有什么方法可以知道它为什么卡住或 PDF 中的什么对象导致它?非常感谢任何信息!

标签: pdfghostscriptpostscripteps

解决方案


-r72 完成非常快,并生成一个 20MB 的文件。-r300 在一两分钟内完成并生成一个 300MB 的文件。通过推断,在 720 dpi 时,输出文件大约为 1.7GB。

如果我以正常分辨率运行但添加 -dNOTRANSPARENCY(这样透明度被忽略),那么我会在几秒钟内得到一个 27MB 的 EPS 文件。

鉴于您的文件具有 40x60 英寸的媒体,以 720 dpi 渲染将需要很长时间。当你这样做时,你最终会得到一个 EPS ,这只不过是一个怪物图像。

如何进行取决于您;如果文件真正使用 PDF 透明度,那么您无法在 PostScript 中生成矢量表示,因为 PostScript 不支持 PDF 透明度,因此您将获得图像。

您可以选择忽略透明度(EPS 在渲染时可能与 PDF 不同),或者以较低的分辨率运行。在不知道最终打印分辨率的情况下,我无法推荐分辨率,但 720 dpi 几乎可以肯定是不合理的高。

请注意,这不是因为它是 CMYK 文件,而是因为 PDF 使用透明度。


推荐阅读