6

フォームを含むpdfがあります。データベースからデータを取得し、フォームのフィールドに自動的に入力するクラスを作成しようとしています。

私はすでに ITextSharp を試しましたが、PDF では問題なく動作しますが、その価格は予算外です。PDFをサーバーに保存するのではなく、クラスからStreamオブジェクトを返すことができるように、PDFをインポートし、データを設定し、できればストリームにPDFを保存できる無料のPDFパーサーが必要です。

このpdfリーダーを見つけましたが、動作しません。Null 参照エラーが多く、それらを「修正」しようとしても、フィールドが見つかりませんでした。

そのため、ドキュメントにはPDFを操作できると書かれているため、PdfBoxに移行しましたが、例が見つかりません。ここに私がこれまでに持っているコードがあります。

var document = PDDocument.load(inputPdf);

var catalog = document.getDocumentCatalog();

var form = catalog.getAcroForm();

form.getField("MY_FIELD").setValue("Test Value");

document.save("some location on my hard drive");
document.close();

問題はcatalog.getAcroForm()、null を返しているため、フィールドにアクセスできないことです。PdfBox を使用してフィールド値を変更し、元に戻す方法を知っている人はいますか?

編集:

私はこの例を見つけました。これは私がやっていることのほとんどです。私のアクロフォームがpdfboxでnullになっているだけです。itextsharp はそれをうまく引き出すことができるので、そこにあることはわかっています。

4

1 に答える 1

1

1.2.1 バージョンで試しましたか?

http://pdfbox.apache.org/apidocs/overview-summary.html

于 2011-09-05T06:52:33.890 に答える