0

ユーザーが提供した単一ページの PDF を、さらに処理するために適切な高解像度の白黒ビットマップに変換したい状況があります (最終的には独自の印刷ソリューションになります)。これらはすべてヘッドレス モードで実行する必要があります。

政治的および技術的な理由により、これは純粋な Java ライブラリ (つまり、Ghostscript ラッパーなし) でなければなりません。現時点では、ロイヤリティ フリーのオープン ソース ソリューションに関心がありますが、パフォーマンスはそれほど重要ではありません。このプロジェクトが成功した場合、よりパフォーマンスの高い専用ライブラリへのアップグレード パスが必要になるかもしれませんが、今は必要ありません。

私が周りを見回したところ、ほとんどの PDF ライブラリ プロジェクトは PDF の操作または表示に重点を置いていることがわかりましたが、それをレンダリング エンジンとして使用することにはあまり重点を置いていません。商用バージョンと比較して、オープン ソース バージョンのフォント エンジンを不自由にしました。

したがって、PDF ライブラリの推奨事項が必要です。

  • 入力ファイルをヘッドレス モードでビットマップにレンダリングします。
  • すべて Java で、ネイティブ コードはありません。
  • 一般的に出回っているすべての PDF ファイルをレンダリングします (無効または不適切な形式のものを除く)。
  • は、ビジネスに適したライセンスを持つオープン ソースです。
  • 頑丈です
  • 積極的に維持されている
  • 遅いか、数ページ以上を処理できない可能性があります (商用バージョンではページ数が増えると制限が解除されます)

提案?

4

5 に答える 5

2

そのようなライブラリはありません。埋め込みフォントを正しくレンダリングできる Java ライブラリはすべて商用です (私は半年前に同様の問題を徹底的に調査しなければなりませんでした)。

正確な理由はわかりませんが、埋め込みフォントの True Type レンダリングを行うことは、TrueType に関するいくつかの特許を保持している adobe からのライセンスにより、何らかの形で保護されている可能性があると考えています。せいぜい実装が非常に難しいだけなので、これを経験した人は皆、お金を欲しがっています. 私が PDFOne を選んだのは、それらが非常に安く (1 シートの再配布ライセンスで 400 ドルまで)、比較的優れているからです。一部のエンコーディングにはまだ問題がありますが、私たちにとってはうまくいきます。

とにかくここで Java を使用するつもりはありませんが、速度と堅牢性のために Ghostscript を使用することを好みます。ただし、ライブラリを「腕の長さ」で使用しない場合は、リリースされている GPL に違反することに注意してください。

于 2011-03-13T14:03:01.153 に答える
1

あなたのリストは矛盾しています。ライセンスの「制限が少ない」ほど、サポートと開発を楽しむための収益が少なくなります。あなたにとってどちらがより重要ですか? Multivalent または PDFRenderer (非常に無料ですが、サポートされていません) または IText、Icepdf、または JPedal を使用できます。これらには、オープン ソースと商用バージョンがありますが、収益源があるため積極的に開発されています。

于 2011-03-13T13:31:06.327 に答える
0

iTextを検討しましたか?

于 2011-03-12T17:01:39.170 に答える
0

icePDFここを見てください

于 2012-01-16T08:46:17.400 に答える
0

Apache PDFBOX meets all criteria. https://pdfbox.apache.org/

The PDF to Image conversion is documented here: https://stackoverflow.com/a/23327024/3196753

于 2020-10-22T15:00:53.237 に答える