25

PDF ドキュメントの場合、個々のページの向きを変更するにはどうすればよいですか?

Ghostscript の最新バージョンを使用しています。

4

2 に答える 2

52

Ghostscript を使用する必要があるのはなぜですか? など、コマンドラインで実行される別の無料のオープン ソース ソフトウェア ツールを使用してもよいでしょうpdftkか?

とにかく、Ghostscript でページを回転させる方法は次のとおりです。ただし、個々のページのみに特定の向きを強制することはできないため、これは意図したとおりに機能しない場合があります。PDF 内のテキストの流れに応じて、自動的にページを回転しようとする内部の Ghostscript アルゴリズムに依存しています。
* -dAutoRotatePages=/None -- 各ページの向きを保持します。
* -dAutoRotatePages=/All -- 「多数決」の種類に応じて、すべてのページをローテーションします (またはローテーションしません)。
* -dAutoRotatePages=/PageByPage-- ページを個別に自動回転します。

これらのいずれかを、使用している Ghostscript コマンドラインに追加します。

ページにテキストがない場合(またはページの自動回転が に設定されている場合/None)、Ghostscript はそのsetpagedevice設定を使用します。次のようなスイッチsetpagedeviceを使用して、Ghostscript コマンドラインでこのようなパラメーターを渡すことができます。 * --方向を設定します。 * --向きを設定します。 * --向きを上下逆に設定します。 * --海景の向きを設定します。 -c
-c "<</Orientation 3>> setpagedevice"
-c "<</Orientation 0>> setpagedevice"
-c "<</Orientation 2>> setpagedevice"
-c "<</Orientation 1>> setpagedevice"

おそらく、ページを抽出するときに、ページごとに向きを設定する必要があります。それらを統合ドキュメントにマージするときに機能するとは思いません(これをテストしたことはありません)。

いずれにせよ、こちらも参照することをお勧めしますpdftk(これは Windows でも利用できます)。これは、PDF などからページを回転できるコマンドライン ツールです。指定した目的では、Ghostscript よりも使いやすく、はるかに高速です。特に、PDF ドキュメント内の個々のページを回転させて、他のページをそのままにしておくことができます。例:

pdftk A=in.pdf           \
  cat A1-3 A4west A5-end \
  output out.pdf

このコマンドは、ページ 1、2、および 3 とページ 5、6、... を最後に回転せずに出力しますが、ページ 4 を 90 度回転します (ページ ヘッダーが「西」を向くようにします)。(ただし、入力ページの元の向きによっては、このコマンドが予期しない結果を招く可能性があることに注意してください。実行して入力 PDF のすべてのページの向きを確認し、出力pdfinfo -l 1000 input.pdfの値を確認する必要があります。 、 、などとrotは異なる値を参照してください。これらのページは既に回転済みです...)090180270

詳細については、http: //www.accesspdf.com/pdftk/を参照してください。

于 2010-06-24T08:07:22.867 に答える