0

テンプレートとxmlデータfo.netから1ページの請求書PDFドキュメントを生成するのに成功しました。xsl-foここで、pdf ドキュメントをループで生成し、それらを に書き込みたいとStream思います。これにより、ドキュメントが 1 つのバッチ PDF にマージされます。ドキュメントが特定の数に達するたびに、新しいバッチ ファイルを作成して続行します。

私の問題: PDF ドキュメントを 1 つずつ生成し、エラーなしでバッチ ファイルに追加しますが、最終的な PDF ファイルには最初のドキュメントしか表示されません。追加されたデータに応じてファイル サイズが増加しましたが、それらのページは表示されません。個々のドキュメントを保存すると、それぞれ 1 ページで問題ありません。ただし、ファイル ストリームに追加された同じドキュメントは、結果のファイルを開いたときに表示されません。

fo:simple-page-masterとを試してみましfo:page-sequence-masterたがfo:repeatable-page-master-reference、成功しませんでした。私がググった限り、fo.netこのように使用することを意図していないと思います。

私の質問はこれです:既存のpdfファイル(またはストリーム)にpdfコンテンツを追加する方法はありますfo.netか? それとも単にできないのでしょうか?

無料のツールを使用して既存のpdfドキュメントをマージするなど、別のソリューションの実装に移る前に確認したいと思います(現在の私の最良の候補はPDFtk です)。

別の可能な解決策は、すでにいくつかのページを含む変換された xsl-fo を生成することですが、パフォーマンス上の理由から、このアプローチは好きではありません。中間ファイルは非常に優れています。一度に 1 ページだけをメモリに保持したいと思います。

おそらく、この問題に対する私の完全なアプローチは間違っています。いくつかのアイデアをいただければ幸いです。

私の環境: .NET 4.0, Visual Studio 2010.

4

1 に答える 1