3

ASP.NET WebForms/MVC 用の C# API を使用して、Web サーバー上の Web ページから PDF ファイルを作成するための堅牢な製品が必要です。この製品は、マークアップで SVG および PATH タグをサポートする必要があり、ページのレンダリング後に起動される ajax 呼び出しによって作成されたマークアップをレンダリングできる必要があります。次の手順は、私が達成しようとしていることをよりよく理解するのに役立ちます。

  1. ユーザーが Web ページの [PDF にエクスポート] ボタンをクリックします。これにより、汎用ハンドラー (ashx ファイル) に要求が送信されます。

  2. 汎用ハンドラーは、ユーザーの資格情報とセキュリティ クリアランスを検証し、PDF ファイルとしてレンダリングされる Web ページの URL を PDF 生成ツールに渡します (ここで C# API が活躍します)。

  3. PDF 生成ツールは、PDF ファイルをサーバー上の一時フォルダーに保存します。

  4. 一時 PDF はバイト配列に読み込まれ、ユーザーがファイルをダウンロードできる応答ストリームに送信されます。

  5. PDF 生成ツールがサポートしている場合、PDF ファイルはサーバー上の一時的な場所に保存されるのではなく、ユーザーのブラウザーに返されます。

現在、activePDF の WebGrabber ツールを使用してこれを実現していますが、Kendo DataViz チャート (SVG および PATH タグを使用) のレンダリングに問題があります。Aspose.Pdf も試してみましたが、ひどいものです。誰かがこれを経験したことがあり、これらの要件を処理できる専門的なツールを推奨できるかどうか疑問に思っています.

最後のメモ:

  • WebBrowser.Print() メソッドはオプションではありません。
  • アドビはこれらの要件に対して何か提供していますか?
  • iText を見てきましたが、Kendo DataViz チャートをサポートしているかどうかわかりません。
4

3 に答える 3

2

WCF サービスを使用してサーバーで PDF を生成する必要がありました。PDFを作成してマージする必要がありました.PDFSharpを使用しましたが、あなたが説明したことを処理できるかどうかはわかりません.

http://www.pdfsharp.net/

また、入力をxmlとして受け取り、出力をPDF、WORD、およびHTMLとして提供するActiveReportsサーバーバージョン7も使用しました

于 2013-02-28T19:35:13.453 に答える
1

私は通常ActiveReportsを使用して PDF を生成しますが、これはむしろ PDF にエクスポートできるレポート エンジンです。スクリーンショットを画像として取得できれば、動的に画像をレポートに追加してから PDF に送信できます。

あるいは、領収書などの特定のページを印刷する必要がある場合は、URL を取得しません。代わりに、領収書をレポートとしてレイアウトし、適切なデータを提供してそのレポートを生成し、PDF としてエクスポートして、ブラウザーに配信します。

于 2013-02-28T19:32:13.460 に答える
1

ASP.NET MVC でwkhtmltopdfを使用して Web ページから PDF をレンダリングしたことがあります。ただし、API からではなく、常に exe として呼び出してきました。

C# API を提供するプロジェクトがここにあるようです。

于 2013-02-28T22:44:43.403 に答える