【问题标题】:Ghostscript - PS to PDF - Selecting multiple input files?Ghostscript - PS 到 PDF - 选择多个输入文件?
【发布时间】:2018-07-18 18:27:01
【问题描述】:

我使用以下代码创建了一个批处理文件来将 PS 转换为 PDF,效果很好。例如:输入文件的名称设置为

输入.ps

input1.ps

input2.ps

等等。

gswin64c.exe -dNOPAUSE -dBATCH -q -dSAFER -sDEVICE=pdfwrite -dPDFSETTINGS=/prepress -sOutputFile="C:\test\bat/output.pdf" input.ps input1.ps input2.ps

但我的用途是我有多个 PS 文件,这些文件存在于路径中,具有不同的文件名(有时生成随机名称),我希望将其转换为一个组合 PDF。如何选择输入法,以便为进程选择所有带有“.PS”扩展名的文件?

谢谢

更新: file.txt 的内容:

XBVC_ABCDEW_L46_ABC2XYZ_SAMPLETEST1.PS XBVC_ABCDEW_L46_ABC2XYZ_SAMPLETEST2.PS XBVC_ABCDEW_L46_ABC2XYZ_SAMPLETEST3.PS XBVC_ABCDEW_L46_ABC2XYZ_SAMPLETEST4.PS

P.S:文本中的每个文件名都是连续的,各个文件名之间有一个空格。

【问题讨论】:

    标签: batch-file pdf ghostscript postscript


    【解决方案1】:

    最简单的方法是创建一个临时文件。每次启动脚本时,我们都会清理文件。一旦您对布局感到满意,就可以从最后一行删除echo,以便实际运行转换。

    @echo off
    type nul >file.txt
    for %%i in (*.ps) do <nul Set /P "=%%i " >> file.txt
    for /f "delims=" %%x in (file.txt) do (
    echo gswin64c.exe -dNOPAUSE -dBATCH -q -dSAFER -sDEVICE=pdfwrite -dPDFSETTINGS=/prepress -sOutputFile="C:\test\bat/output.pdf" %%x
    )
    

    【讨论】:

    • 首先,非常感谢!!最初,当我使用多个名为“输入”的 PS 文件时,它就像一个魅力。但是当我将一些典型文件移动到文件夹时,批处理执行并创建了临时文件,其中包含临时文件中所有“.PS”文件的名称,但没有创建输出 pdf。然后我通过仅包含名为 input 的文件来重新执行这些步骤来测试,奇怪的是它现在不起作用并且与上面类似的观察。我什至复制了您提供的代码并创建了一个新批次,但仍然可以生成 PDF 输出。前任。典型的文件名:“XBVC_ABCDEW_L46_ABC2XYZ_SAMPLETEST1”
    • @reddragon 请向我展示输出写入的file.txt 的内容。您可以编辑您的问题并添加内容。
    • 请找到问题中更新的临时文件的内容。
    • @reddragon 所以一些.ps 文件名实际上有空格?
    • 不。抱歉,这是我为检查是否导致问题而进行的测试。我重新编辑了现在显示典型临时文件内容的问题。它们有很多“_”,但没有空格。
    猜你喜欢
    • 1970-01-01
    • 2011-03-23
    • 1970-01-01
    • 1970-01-01
    • 2018-11-10
    • 2021-08-28
    • 1970-01-01
    • 2012-11-28
    • 1970-01-01
    相关资源
    最近更新 更多