メモリストリームまたはバイト配列に既存のiTextSharpの文書を変換する方法はありますか?
バージョン7 Document
前のiText(シャープ)のアーキテクチャでは第
があるいくつかの書式設定情報を知っている(デフォルトのページサイズ、余白、...)と抽象与えることができ形骸クラス登録されたリスナークラスに転送し、出力フォーマットのエンティティにしてストリームに書き出し、すぐにそれらを忘れてしまうドキュメントパーツ(段落、テーブルなど)
(バージョン5の前にiTextの分布もRTFを作成するためのクラスが含まれている!しかし、たとえバージョン5.xのためにあなたがあなたの好みの内容に抽象的な文書パーツを変換するために、独自のリスナーを登録することができます。)
このように、 iText Document
(可能な場合)をシリアライズしてデシリアライズすると、効果的なのは、抽象的なドキュメントフォーマットのみを復元でき、具体的なコンテンツは復元できません。しかしそれはサポートされていません。メモリ内の全コンテンツのモデルを保つDocument
クラスとライブラリとは対照的に
、iTextのは、高スループット、大サイズ、低フットプリント・サーバ・アプリケーション用に設計されています。
これは、XML DOMとXML SAXの違いと比較できます。 iTextは、SAX(またはStAX)と比較することができます.SOA(またはStAX)では、メモリに本格的なドキュメント表現があるDOMとは対照的に、ライブラリではほとんどドキュメントが認識されません。あなたは何ができるか
は、もちろん、あなたが後でPdfReader
によって読み取られ、PdfStamper
で操作することができますMemoryStream
への書き込みにPdfWriter
を登録することです。しかし、私はそれがあなたが考えていたものではないと仮定します。
出典
2017-05-18 20:01:09
mkl
これは、以前これが返答されたようです。[http://stackoverflow.com/questions/1192384/itextsharp-how-to-convert-document-to-byte](http://stackoverflow.com/questions/) 1192384/itextsharp-how-to-convert-document-to-byte) – user3583535
PDFファイルをメモリストリームに変換しますか?それを行うにはiTextは必要ありません。 –