我使用以下代码创建了一个批处理文件,将PS转换为PDF,效果很好。例如:输入文件的名称设置为
input.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:文本中的每个文件名都是连续的,各个文件名之间有一个空格。
答案 0 :(得分: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
)