8

編集: ABCpdf を使用してこのプロジェクトを完了しました。興味のある人なら誰でも、私はこの製品が大好きで、彼らのサポートはA +です. HTML -> PDF ソリューションの「短所」として挙げたものはすべて、ABCpdf で簡単に実行できました。


私は、データ駆動型の PDF レポートの作成を担当しています。たくさんのオプションを検討した後、2 つに絞り込みました。決定するのを手伝ってくれるか、考慮していない代替案を提供してください。要件は次のとおりです。

  1. 100% データドリブン
  2. 最終的には PDF (変換される限り、HTML での停止は問題ありません)
  3. 複数のデータセットで実行可能 (レイアウトは常に同じ、データは可変)
  4. 通常の分析スタイルのコピーが含まれています (html マークアップで DB に保存されます)
  5. テーブルを含む (テーブルのデータは実行時に生成されます)
  6. 各ページのヘッダー/ページ番号
  7. 目次
  8. .NET (VB または C#)
  9. すぐに完了

レポートは複数のデータ セットで生成されるため、レポートの特定の部分がどのくらいの長さやページ数になるかわからないため、スタンプ付きの pdf テンプレートは機能しないと思います。必要とする。

したがって、私の最良の選択肢は次のとおりだと思います。

  1. iText のようなソリューションを使用したプログラムによる作成。
  2. HTML で生成し、サードパーティ アプリケーションを使用して PDF に変換します (ABCPdf は、これまでに使用したツールです)。

どちらのソリューションにも長所と短所があります。

プログラマティック ソリューション:

長所:

  1. フレキシブル
  2. 簡単なページ番号付け/ページヘッダー/目次
  3. 無料

短所:

  1. 時間がかかる (iText の上にレイヤーを書き込んで、必要なことを実行し、保守しやすくする)
  2. コピーは既に html マークアップを使用してデータベースに保存されているため、pdf に配置する前にデータを解析する必要があります。これにより、太字、斜体、下線を適用できるように段落をチャンクに分割する必要がなくなります。などを特定のフレーズに。これは巨大な PITA のように思えますが、その仮定が間違っていることを願っています。

HTML -> PDF

長所:

  1. データベースから簡単に生成 (解析不要)
  2. 変換のための多くのツール
  3. 使い慣れたテクノロジーを使用
  4. 組み込みの「印刷プレビュー」 - 必須ではありませんが、便利です

短所:

(プロジェクト完了後に編集。私の仮定はすべて間違っていて、ABCpdf は素晴らしいです)

1. ページ ヘッダーを生成するのはほとんど不可能-正しくない
2. ページ番号を生成するのは非常に難しい 正しく ない
3. 目次を生成するのはほとんど不可能 正しく ない
4. (クロスブラウザー サポートは欠点ではありません。
5. 変換ツールの癖 - ブラウザでレンダリングされたとおりに正確に変換されない場合がある 正しくない 6.全体
として、HTML を表示/PDF に変換したいのとまったく同じようにフォーマットするのは非常に難しいと思います. 違います

それだけです。どの道を進むべきかを決めるには、コミュニティの助けが必要です。私は賛否両論の仮定のいくつかについて間違っているかもしれません。もしそうなら、教えてください。すべての考えや提案は大歓迎です。

ありがとう

4

5 に答える 5

3

http://alistapart.com/articles/boomで使用されているものと同様のアプローチを使用することにしました

最終的な HTML -> PDF 生成には、Prince の代わりに ABCPdf を使用します。

同じことに興味がある人は、このアプローチについて気軽にメッセージを送ってください。

于 2010-01-04T03:59:06.770 に答える
2

Adobe Acrobat Pro のフル バージョンをお持ちの場合は、Adobe Live Cycle が付属していると思います。データベースから生成されたレポートを作成できるはずです。レポートを最初から作成するため、書式設定に必要なすべてが提供されます。

フォーム フィールドにデータをフィードする OLE データベースへのデータベース接続を作成できます。使用するテーブル、実行するストアド プロシージャ、クエリを選択すると、デザイナーのパレットの 1 つにデータが表示されます。

また、Web サービス (WDSL) を使用して、コマンドを受け取って処理し、結果をフォームに返すこともできます。

どちらの方法でも、フィールドをデータ ソースにバインドすると、データがフォームに表示されます。

少し .NET の作業を行う場合は、次のようにします。

http://www.dotnetvj.com/2009/05/populating-pdf-from-aspnet-using.html

于 2009-12-30T16:24:16.617 に答える
1

使用し、対象としているプラ​​ットフォームに応じて、レポート ソリューションを検討することをお勧めします。これらは完璧ではありませんが、レポートを一度作成すると、それを HTML、PDF、または Excel でレンダリングする機能が提供されます。

通常、レポートをデザインして見栄えを良くするのに役立つエディターも提供します。これらは、ページング、ヘッダー、フッター、グラフなどを提供します。また、レポートをプログラムで作成および実行するために使用できる API も提供します。

MS 環境でReporting Servicesを使用し、Java 環境でJasper Reportsを使用して、両方で良好な結果を得ています。他にもオプションがあると思いますが、これらは私がうまく使用できたものです。

于 2009-12-30T16:09:10.873 に答える
0

HTML→PDFのステップでは、私はPrinceが大好きです。VBから呼び出せるようです。

于 2009-12-31T12:00:22.687 に答える
0

私の推奨事項は、SQL Reporting Services を使用することです。

  • レポートのすべてのページと表をデザインできます
  • ヘッダーとフッターを含める
  • ページ番号を含める
  • 目次
  • 複数のページにまたがることができます
  • 画像とチャートをサポート
  • サードパーティの PDF コンバーターを必要とせずに PDF にレンダリングできます
于 2012-07-06T19:22:53.577 に答える