1

フォルダーには約 100 個の PDF があり、ページ サイズは異なります (つまり、A4、奇妙なものなど) が、すべて A4 の長さと幅の比率です。次に、すべてを同じサイズ、つまり A4 にサイズ変更する必要があります。

現時点では、バッチ ファイルごとにいくつかの PDF をマージするためにSejdaを使用しています。したがって、ここでもバッチ ファイルごとのソリューションをお勧めします。

この質問では、他のソリューションの中でも PDFtk または PDF の分割と結合を使用することを提案しましたが、この機能を提供していないようです。他のアプローチやヒントはありますか?

4

1 に答える 1

4

これには Ghostscript を使用できます。次のコマンドは、個々の PDF を A4 にサイズ変更します。

for input in *.pdf ; do
     gs                        \
       -o A4-resized-${input}  \
       -sDEVICE=pdfwrite       \
       -dPDFFitPage            \
       -g5950x8420             \
       -dPDFSETTINGS=/prepress \
        ${input}
 done

このコマンドは、すべての入力ファイルからマージされた PDF を作成し、その過程で各ページのサイズを変更します。

 gs                        \
   -o A4-resized-${input}  \
   -sDEVICE=pdfwrite       \
   -dPDFFitPage            \
   -g5950x8420             \
   -dPDFSETTINGS=/prepress \
    *.pdf

シェルのワイルドカード*.pdfがページを好みに合わせてソートしない場合は、自分でソートする必要があります:

[...gs-cmd...]  input1.pdf input2.pdf input3.pdf [input4.pdf ...] 

警告: 2 番目のオプション (個々の PDF を結合してサイズ変更する) は、次の場合に、結合された PDF のフォントで問題を引き起こす可能性があります。

  1. Ghostscript のインストールは最近のバージョンではありません。
  2. 入力 PDF ファイルはサブセット化されたフォントを使用しており、フォント名の「一意の」接頭辞 ( などXAGTRU+) はまったく一意ではなく、予測可能です。OpenOffice/LibreOffice およびその他の PDF ジェネレーターは、常に接頭辞を (予想通り) BAAAAA+, CAAAAA+,として開始することが知られていDAAAAA+ます。BAAAAA+Arialこれにより、入力 PDF によって挿入されたサブセット化されたフォントの複数のインスタンスが発生します。これらは一意ではありませんが、異なるものであり、同じ名前を使用しています。
于 2015-02-11T13:06:03.310 に答える