2017-06-15 7 views
0

私はadobeライフサイクルデザイナーで作成されたxfaフォームを持っています。私はフォームを正常に記入することができますが、署名できない署名フィールドがあります。フィールドに署名するときにフィールドが見つからないというコードエラー(私は正しいフィールド名を持っています)が、私がAdobe Readerを使用してフォームに署名すると、まったく同じコードを使用して辞めることができます。私は、Bruno Lowagie -equential SignaturesのPDF文書のデジタル署名の例を使用しています。署名フィールドを有効にする必要がありますか?誰でも助けてくれてありがとう。Itextsharp siging xfaフォームフィールドが見つかりません

答えて

0

署名XFAフォームはPAdES-5に記述されていますが、コードを共有することは忘れていますが、おそらくPAdES-2またはPAdES-3で説明されているように署名を追加しています。以前はPAdES-5を実装していましたが、私が知る限り、Adobe自身がPAdES-5標準に準拠していなかったため、その機能を促進することはありませんでした。言い換えれば、私たちのコードは標準に従っていましたが、他の誰も標準を実装していなかったので無駄でした。 ISO-32000-2では、XFAは廃止されました。つまり、XFAへのさらなる投資はすべて捨てられます。何年も前にXFAの廃止が伝えられているため、XFAを使用しているのは驚くべきことです。

私はあなたの質問をd​​isectすることを許可する:

  • あなたはiTextを持つ署名フィールドを検索すると、そのフィールドが見つかりません。これは正常です。フォームは純粋なXFAフォームです。見つかるAcroFormフィールドはありません。フィールドはXMLで表現されます。 iTextはAcroFormの署名フィールドのみを調べます。
  • Adob​​e Readerを使用して文書に署名することができます。 Adobeは、PAdES-5とは多少異なるXFAフォームに署名する方法を実装しました。署名処理中に、AcroForm署名フィールドが作成されます。
  • Adob​​e Readerを使用して文書に署名した後、iTextにそのフィールドが表示されます。実際、Adobe ReaderはAcroForm署名フィールドを追加して以来、iTextはこれを検出できるようになりました。

あなたのオプションは何ですか?あなたがXFAを放棄することができれば、そうする。たとえば、XFAフォームの代わりにAcroFormテクノロジに基づいてフォームを作成することができます。これがオプションでない場合、フォームに署名する前にフォームを平坦化することができます。そうすれば、AcroFormシグネチャフィールドを追加できる通常のPDFが作成されます。

上記のオプションのどれもあなたにとって問題がなければ、唯一の選択肢はAdobeソフトウェアを使用することです。これは、Adobe LiveCycle ESのライセンスを購入することを意味します。ただし、XFAは従来のソフトウェアです。あなたのCTOだったら、私はXFAの使用を承認しません。

+0

本当にありがとうございます。私はこれを解決しようと多くの時間を費やしてきましたが、あなたの提案のいくつかを試してみましょう。 –

関連する問題