多数のテキスト フィールドを含む PDF フォームがあります。これらのフィールドに入力された値は、他のフィールドの値を計算するために使用されます (計算フィールドは読み取り専用です)。
Adobe Reader でフォームを開いてフィールドに入力すると、計算フィールドが自動的に再計算されます。
ただし、iTextSharp を使用してフィールドに入力し、結果のフォームを平坦化し、平坦化されたフォームを Web 経由でユーザーにストリーミングします。
計算フィールドが計算されないことを除けば、その部分は問題なく機能します。ユーザーがトリガーしたイベント (キーダウン、フォーカス、ぼかしなど) が発生していないため、計算は行われないと想定しています。
明らかに、入力可能なフォームから計算を削除し、フィールドに入力しているときはすべてサーバー上で実行できますが、入力可能なフォームをサーバーだけでなく人間も使用できるようにしたいと考えています。
誰かが計算を強制する方法を知っていますか?
編集:私はここでiText / iTextSharpの愛をあまり感じていません...
ここにいくつかの詳細があります。Stamper.AcroFields.GenerateAppearances を true に設定しても役に立ちません。
答えはページアクションのどこかにあると思いますが、それをトリガーする方法がわかりません...