0

Adobe Acrobat や Reader から発生する特定のエラー

「ドキュメントに署名できませんでした。この署名をコミットしようとしたときにエラーが発生しました。ドキュメントは保存されませんでした。このファイルは完全保存で保存する必要があります。」

署名しようとしている PDF は、データベースに格納されているバイナリ データから IFrame に表示されるバイト配列から作成されています。

            byte[] stream = (from m in db.pdf_store
                             where m.pdf_id == uid
                             select m.pdf_binary).First().ToArray();
            Response.ContentType = "application/pdf";
            Response.AddHeader("Content-Disposition", "Inline");
            Response.OutputStream.Write(stream, 0, stream.Length);
            Response.Flush();
            Response.End();

このコードは、PDF を表示するだけでなく、Internet Explorer で署名フィールドを表示するのにも問題なく機能します。署名ボックスをクリックし、署名パッドを使用してドキュメントに署名できますが、同意をクリックすると上記のエラーが表示されます。

これは、PDFが実際のファイルではないことに関係している可能性があると思います。提案やヘルプをいただければ幸いです。

4

1 に答える 1

0

問題が見つかりました。Itextsharp を使用して PDF を変更しました。ユーザー権利を維持するには、追加モードを使用する必要があることがわかりました。また、バイト配列を作成するときに Itextsharp の追加モードを使用するには、GetBuffer の代わりに ToArray を使用して読み取る必要があることもわかりました。

于 2013-03-12T14:15:52.190 に答える