0

次のようなコマンドを使用しています。

gswin32c.exe -dNOPAUSE -dBATCH -q -dSAFER -sDEVICE=pdfwrite -dPDFSETTINGS=/prepress -sOutputFile="path/output.pdf" <PSfiles>

これにより、各 PS ドキュメントがページとして表された単一の pdf ドキュメントが得られます。ただし、ページ サイズは適切に変換されません。元の PS ファイルはすべて異なるサイズであり、結果の各 PDF ページは同じサイズにカットオフされ、横長の A4 のように見えます。

まったく同じコマンドで 1 つの PS ファイルを変換すると、ページ サイズが維持されます。したがって、すべての PS ファイルが同じ pdf に送信されているため、すべて同じページ サイズである必要があり、コンテンツが失われているようです。単一のコマンドを使用しながら、ドキュメントのサイズを維持する方法はありますか?

更新: 最初は GS 8.63 を使用していましたが、9.06 をダウンロードしたところ、同じ問題が発生しました。さらに、問題を絞り込みました。problemFile.ps を除外する限り、コマンドを正常に実行できるため、問題の原因となる特定の PS ファイル (problemFile.ps と呼びます) が 1 つあるようです。また、コマンドラインに含まれる最後のファイルである場合にのみ問題が発生します。ファイル全体を投稿することはできませんが、確認すべき潜在的な問題領域はありますか?

Update2: 特定の問題ファイルが 1 つあると言うのは間違っていました。コマンド ラインに含まれる最後のファイルのページ サイズによって、結果として得られるすべてのページの最大ページ サイズが設定されるようです。

4

1 に答える 1

1

各 PostScript ファイル (または実際には各ページ) が実際に異なるメディア サイズを要求している限り、結果の PDF ファイルは要求を受け入れます。私はこれが少なくとも機能していたことを知っています、私はそれをテストしました。

ただし、コマンドラインには、再検討する必要があるかもしれないいくつかのことがあります。

1) GS の問題を調査するときは、-q を使用しないでください。これにより、Ghostscript が潜在的に有用なことを通知できなくなります。

2)関連するドキュメントを読み、各パラメーター設定の意味を理解していない限り、-dPDFSETTINGS を使用しないでください

3) AutoRotatePages をオフにするか、少なくとも /PageByPage に設定することをお勧めします。

私の推測では、PostScript ファイルはメディア サイズを要求しないため、デフォルトのメディアを使用していると思われます。もちろん、例を見ないとわかりません。

また、使用している Ghostscript のバージョンについても言及していないことに注意してください。

于 2013-01-24T08:37:29.607 に答える