テンプレートと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
.