PDFをレンダリングするときに、チェックボックスの塗りつぶしタイプをオンデマンドでカスタマイズできる必要があります。
これはAcroFields (pdfStamper.getAcroFields()) でのみ行う必要があります。これは、新しいフィールドを作成していない (変更しているだけである) ためであり、スコープ内で使用できるのはそれだけです。以下にリストされているものを含め、約100のことを試しましたが、これはこれを行う方法についての私の最善の推測でした.
PdfDictionary dictionary = (PdfDictionary) acrofields.getFieldItem("ABCD").getWidget(0).get(PdfName.MK);
dictionary.put(PdfName.CA, new PdfString("8", PdfObject.TEXT_UNICODE));
ABCD はテスト用です。
私は非常に立ち往生しており、どんな助けも大歓迎です。辞書の値を変更することはできますが、pdf をファイルに書き込んでも影響はないようです。チェックボックスをチェック/チェック解除するように設定したり、テキストフィールドにデータを入力したりするなどのその他の変更。ですから、なぜこれが機能しないのか、非常に驚き、混乱しています。