私はいくつかの非常に大きなPDFを扱っています。サイズが7GBを超えるものもあります。 PDFには最大20,000ページ、多くのフルページカラー画像があります。私はPDFを使うのにPDFBoxを使いたいのですが、サイズのせいでPDFを開こうとするとOutOfMemoryErrorが出ます。PDFBox:非常に大きなPDFを扱う。
私はちょうどPDDocumentでPDFを開いた簡単なプログラムを書いて、各ページに対処しようとしたのjava 6.
まず、IntelliJのを使用してWindows 7上で、バージョンpdfboxアプリ-1.6.0で働いていますhttp://ideone.com/arKhB
次の例では、PDFBox CopyDocを使ってみました。
両方のメモリが不足しています。
これは、PDFBoxがドキュメント全体をメモリに読み込もうとしているからです。一度に1ページだけを開くようにする方法はありますか?処理が遅くなることはわかっていますが、現時点では何も処理できません。 2.0では
も参照してくださいhttp://stackoverflow.com/questions/586257/read-pdf-uploadstream-one-page-at-a-time-with-java – DNA
おそらくPDFファイルをリストに分割し、リストをループします一度に一定量のページを読むことができます。 – Jasonw
@DNA - リンクありがとう。私はポストする前にPDFBoxでタグ付けされたすべての質問をチェックしたが、私の検索ではそれを見逃していた。 – Pengo