目前我正在使用此命令将文件X.pdf转换为X.tif。
for (int fileNum = files.Count-1; fileNum >= 0; fileNum--)
{
//Assign file within the loop
var file = files[fileNum];
DateTime creationDate = file.TimeCreated.ToLocalTime();
DateTime currentTime = DateTime.Now;
TimeSpan elapsedTime = currentTime.Subtract(creationDate);
int fileAge = elapsedTime.Minutes;
int maxTime = 1;
if (fileAge > maxTime)
{
file.DeleteObject();
}
}
是否可以顺利地完成相应的
gs -q -sDEVICE=tiffg4 -r300 -dBATCH -dPDFFitPage -dNOPAUSE -sOutputFile=tif/X.tif pdf/X.pdf
就像搜索查询一样? (我用*替换了X)它显然不适用于这种方法,但也许有类似的语法?
或者我将不得不写一个批处理文件或类似的东西?
PS:我在OSX上
答案 0 :(得分:0)
尝试将此保存为tif2pdf
在包含子目录tif
和pdf
的目录中:
#!/bin/bash
# Change into the "tif" directory to find the input files
cd tif || { echo ERROR: Subdirectory tif not found; exit 1; }
# Loop through all files ending in ".tif"
for f in *.tif; do
# Determine output filename
out=${f%%tif}
out="../pdf/${out}pdf"
# Show the command we would run
echo gs -q -sDEVICE=tiffg4 -r300 -dBATCH -dPDFFitPage -dNOPAUSE -sOutputFile="$out" "$f"
done
然后进入终端中的该目录,并使用以下命令使该脚本可执行:
chmod +x tif2pdf
然后用:
运行它./tif2pdf
目前,除了告诉你它会做什么之外什么都不做。如果您喜欢它所组成的命令的外观,请编辑脚本并删除倒数第二行中的单词echo
并再次运行以实际进行转换。
示例输出
gs -q -sDEVICE=tiffg4 -r300 -dBATCH -dPDFFitPage -dNOPAUSE -sOutputFile=../pdf/a.pdf a.tif
gs -q -sDEVICE=tiffg4 -r300 -dBATCH -dPDFFitPage -dNOPAUSE -sOutputFile=../pdf/b.pdf b.tif
我建议先在 COPY 文件中运行它。