3

現在、pdfでチェックボックスを作成するための次のような方法があります。

private static void createCheckbox(PdfWriter writer, float lowerLeftX, float lowerLeftY, float upperRightX, float upperRightY, String fieldName, boolean startChecked) throws IOException, DocumentException {
    RadioCheckField bt = new RadioCheckField(writer, new Rectangle(lowerLeftX, lowerLeftY, upperRightX, upperRightY), fieldName, "Yes");
    bt.setCheckType(RadioCheckField.TYPE_CHECK);
    bt.setBorderWidth(BaseField.BORDER_WIDTH_THIN);
    bt.setBorderColor(Color.BLACK);
    bt.setBackgroundColor(Color.WHITE);
    bt.setChecked(startChecked);
    bt.setOptions(RadioCheckField.READ_ONLY);
    PdfFormField ck = bt.getCheckField();
    writer.addAnnotation(ck);
}

これにより、ボックスを作成するために、左下の X 座標と Y 座標、右上の X 座標と Y 座標を送信できます。これは、チェックボックスを作成するドキュメントの最初のページでうまくいくようです。後のページで作成しようとすると、表示されません。

例: PDF フォームの 1 ページ目にテキストを作成し、新しいページを作成し、情報とチェックボックスを追加し、新しいページを作成し、情報とチェックボックスを追加します。チェックボックスのある両方のページに同じコードを使用しても、最後のページには実際にはチェックボックスが表示されません。

4

1 に答える 1

0

各ページに別の名前を付けてみてください。フィールド名はドキュメント全体です。

于 2012-09-13T13:25:35.153 に答える