具有原始文件名的 GhostScript 输出文件

Posted

技术标签:

【中文标题】具有原始文件名的 GhostScript 输出文件【英文标题】:GhostScript output files with original file name 【发布时间】:2016-11-22 12:35:42 【问题描述】:

我正在使用此命令将 PDF 文件转换为单独的图像:

-sDEVICE=jpeg -o page-%02d.png X.pdf

这会将文件输出为:

page-01.jpeg, page-02.jpeg,等等。

但是,我想用这个文件名输出文件:

X-page-01.jpeg, X-page-02.jpeg,等等。

可以用 GhostScript 做到这一点吗?

【问题讨论】:

【参考方案1】:

嗯,是的,显然这是可能的:

-sDEVICE=jpeg -o X-page%02d.jpeg X.pdf

(我假设您实际上是指 page-%02d.jpeg,而不是 .png,因为您指定的是 jpeg 设备)。

不,Ghostscript 不会自动将输入文件名添加到输出文件名,您必须自己做。

【讨论】:

你不能使用 for 循环之类的吗?在这里搜索了近一个小时后,我得出的结论是有可能,但我不知道该怎么做。 Ghostscript 不允许您以任何有意义的方式使用输入文件名。如果你想写一个 shell 脚本,那么是的,你可以做各种各样的事情,但这在很大程度上取决于使用的操作系统,你没有提到,也没有提供任何线索。 嗯,好吧,没错——我使用的是 Windows。但是,如果我这样问,这不就像是让别人为我写命令一样吗?我不确定这里是否允许......而且我个人不想只学习一次如何做到这一点(这就是为什么我正在寻找一个有帮助的解决方案) 制作一个批处理文件(例如test.bat),在里面放“gswin32c -sDEVICE=jpeg -o %~n1-page%%02d.jpeg %1” 然后调用批处理文件输入文件名。例如 test sample.pdf 然后将生成 sample-page1.jpeg、sample-page2.pdf 等形式的文件。当然,如果它不在您的 PATH 中,您可能必须指定 Ghostscript 的完整路径。跨度> 非常感谢您的建议!我会试一试,然后告诉你进展如何。

以上是关于具有原始文件名的 GhostScript 输出文件的主要内容,如果未能解决你的问题,请参考以下文章

ghostscript 命令行参数输出文件名更改

如何使用 GhostScript 设置 PDF 文件的输出图像大小限制

如何更改 Ghostscript 输出文件(在打印机后台处理程序中)

如何使 ghostscript 将 postscript 文件中的单个特定页面输出为 png?

通过子进程调用 GhostScript 无法创建输出文件

使用ghostscript时如何使用不带扩展名的输入文件名附加输出文件名?