unix – 如何合并PDF文件(如果不可能,则为PS),以便每个文件都以奇数页开头?

我正在研究UNIX系统,我想将数千个PDF文件合并到一个文件中以便打印它.我不知道他们提前有多少页.

我想双面打印,这样两个文件就不会在同一页面上.

因此,我将合并文件对齐,使得每个文件将以奇数页开始,如果下一个要写的页是偶数页,则将添加空白页.

这是我使用的解决方案(它基于@ Dingo的基本原理,但使用更简单的方法进行PDF操作):

首先,我在某处创建一个带有单个空白页的PDF文件,例如在“/path/to/blank.pdf”中.

然后,从包含我所有pdf文件的目录中,运行一个小脚本,将blank.pdf文件附加到每个带有奇数页码的pdf:

#!/bin/bash

for f in *.pdf; do
  let npages=$(pdfinfo "$f"|grep 'Pages:'|awk '{print $2}')
  let modulo="($npages %2)"
  if [ $modulo -eq 1 ]; then
    pdftk "$f" "/path/to/blank.pdf" output "aligned_$f"
  else
    cp "$f" "aligned_$f"
  fi
done

现在,所有“aligned_”文件都有偶数页码,我可以使用它们加入它们

pdftk aligned_*.pdf output result.pdf

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...