3

PDF ファイルの大量のバッチを動的に生成して圧縮する必要があります。

私は通常のアルゴリズムを検討しています

  • ジップ
  • エース
  • ラル

他の提案は大歓迎です。

私の質問は、どのアルゴリズムが最小のファイル サイズを与える可能性が高いかということです。速度と効率も重要な要素ですが、サイズが一番の関心事です。

また、各アーカイブに小さなファイルがたくさんあるのか、大きなファイルが少ないのかによっても違いがありますか。

私の処理のほとんどは PHP で行われますが、必要に応じてサードパーティの実行可能ファイルとのインターフェイスも喜んで提供します。

編集:

ドキュメントは主に請求書であり、会社のロゴ以外の画像を含めないでください。

4

6 に答える 6

6

PDFの圧縮にあまり成功していません。指摘したように、それらは作成時にすでに圧縮されています (ただし、一部の PDF 作成ツールでは「圧縮レベル」を指定できます)。可能であれば、最初に取るべきアプローチは、合成された PDF のサイズを縮小することです。

PDF を 1 つのファイルに保存すると、共通のリソース (画像、フォント) を共有できるため、PDF を大幅に小さくすることができます。これは、複数の PDF を含む 1 つの大きな ZIP ではなく、1 つの大きな PDF ファイルを意味することに注意してください。

私の経験では、PDF 内の画像を圧縮することは非常に困難であり、その画像はファイル サイズに最も大きな影響を与えます。開始する前に、画像が最適化されていることを確認してください。画像がどれだけのサイズに寄与しているかを確認するためだけに、画像なしでテスト ランを実行する価値さえあります。

もう 1 つのコンポーネントはフォントです。複数の埋め込みフォントを使用している場合は、より多くのデータをファイルに詰め込むことになります。サイズを抑えるために 1 つのフォントを使用するか、一般的にインストールされているフォントを使用して、それらを埋め込む必要がないようにしてください。

于 2009-11-23T12:24:01.227 に答える
1

現時点では 7z が最適で、RAR が 2 番目ですが、両方を試して、自分に最適なものを見つけることをお勧めします。

于 2009-11-23T12:01:53.757 に答える
1

最小のファイル サイズが必要な場合は、LZMA が最適です。

もちろん、PDF自体も圧縮できます。

于 2009-11-23T12:03:40.053 に答える
1

PDFを圧縮することで、ファイルサイズを大幅に削減できるとは思えません。ただし、複数のファイルを 1 つにまとめることだけを行っている場合は、そうしないのはなぜtarでしょうか。

于 2009-11-23T12:05:13.580 に答える
1

過去に、大量のテキストを保存する大きな (そして多くの) PDF に対してこれを行ってきました - オーストラリアのトレーニング組織向けのトレーニング パッケージ。その約 96% のテキスト (コース情報など) といくつかの小さな図。サイズは 1 ~ 2Mb から 8 または 9Mb までさまざまで、通常は 4 つ以上のボリュームで提供されます。

PDF 形式はすでにかなり圧縮されているため、Zip OK で圧縮すると良好な圧縮が得られることがわかりました。ファイルサイズを気にするよりも、ユーザーがすべてをバッチとしてダウンロードする方が使いやすいです。参考までに、2.31Mb のファイル (大量のテキスト、いくつかのフルページの図) を ZIP で 1.92Mb、RAR で 1.90Mb に圧縮しました。

LZMA を使用して最善を尽くすことをお勧めします-圧縮と解凍のリソース使用量も調べます。

これらのファイルの大きさは? WinRAR、WinAce、および 7Zip のコピーを入手して、事前に配布してください。

于 2009-11-23T12:09:48.020 に答える
1

私の気の利いたツールPrecompと 7-Zip を組み合わせます。PDF内のzLibストリームを解凍するため、7-Zip(または他のコンプレッサー)がそれらをより適切に処理できます。元のサイズの約 50% のファイルサイズをロスレスで取得できます。このツールは特に PDF ファイルに適していますが、ZIP/GZip/JAR/GIF/PNG などの他の圧縮 (zLib/LZW) ストリームにも適しています。

結果の例については、こちらまたはこちらをご覧ください。事前圧縮 (PDF->PCF) 部分では速度が遅くなる可能性がありますが、再圧縮/再構成 (PCF->PDF) 部分では非常に高速になります。

Precomp + 7-Zip よりもさらに良い結果を得るには、lprepaq および prepaq バリアントを試すことができますが、特に prepaq は遅いことに注意してください :) - 明るい面は、prepaq が現在利用可能な最高の (PDF) 圧縮を提供することです。

于 2009-11-23T12:10:26.280 に答える