Cara Bekerja dengan Formulir Interaktif di Java

Cara Bekerja dengan Formulir Interaktif di Java

Panduan ini menunjukkan cara membuat dan mengelola bidang AcroForm dalam dokumen PDF menggunakan Aspose.PDF FOSS untuk Java. Anda akan belajar menambahkan tombol radio, kotak centang, dan bidang teks, serta membaca nilai bidang formulir yang dikirim.

Buat Grup Tombol Radio

RadioButtonField mewakili sekelompok opsi yang saling eksklusif. Setiap opsi ditambahkan dengan label dan kotak batas Rectangle. Tetapkan nilai awal dengan memanggil setValue() menggunakan salah satu label opsi:

try (Document doc = new Document()) {
    PageCollection pages = doc.getPages();
    Page page = pages.add();
    RadioButtonField radio = new RadioButtonField(page);
    radio.setPartialName("choice");
    radio.addOption("Yes", new Rectangle(50, 50, 70, 70));
    radio.addOption("No", new Rectangle(50, 80, 70, 100));
    doc.getForm().add(radio, 1);
    radio.setValue("Yes");
    doc.save("form.pdf");
}

Tambahkan Kotak Centang

Sebuah CheckboxField adalah bidang boolean tunggal. Atur setChecked(true) untuk membuatnya tercentang secara default. Bidang ini ditambahkan ke formulir pada nomor halaman tertentu (berindeks 1):

try (Document doc = new Document()) {
    PageCollection pages = doc.getPages();
    Page page = pages.add();
    CheckboxField cb = new CheckboxField(page, new Rectangle(50, 50, 70, 70));
    cb.setPartialName("agree");
    cb.setChecked(true);
    doc.getForm().add(cb, 1);
    doc.save("form.pdf");
}

Tambahkan Bidang Teks

TextBoxField menerima input teks pengguna. Tetapkan nilai default dengan setValue() dan daftarkan bidang dengan formulir sebelum menyimpan:

try (Document doc = new Document()) {
    PageCollection pages = doc.getPages();
    Page page = pages.add();
    TextBoxField text = new TextBoxField(page, new Rectangle(50, 200, 250, 220));
    text.setPartialName("name");
    text.setValue("Enter your name");
    doc.getForm().add(text, 1);
    doc.save("form.pdf");
}

Dapatkan Nilai yang Dipilih

Setelah memuat formulir, ambil nilai saat ini dari sebuah bidang berdasarkan nama parsialnya. Ubah tipe bidang ke tipe konkretnya untuk memanggil metode spesifik tipe:

try (Document doc = new Document("form.pdf")) {
    RadioButtonField radio = (RadioButtonField) doc.getForm().get("choice");
    String selected = radio.getValue();
    System.out.println("Selected: " + selected);
}

Ekspor dan Impor Nilai Formulir sebagai JSON

Selain membaca nilai satu bidang, Form.exportToJson dan Form.importFromJson melakukan round-trip nilai seluruh bidang formulir melalui aliran JSON dalam satu panggilan, yang berguna untuk memindahkan data yang telah diisi antara formulir PDF dan sistem eksternal. Untuk satu bidang, Field.exportValueToJson dan Field.importValueFromJson melakukan pekerjaan yang sama tanpa menyentuh bagian lain dari formulir. Serialisasi dasar disediakan oleh FormJsonSupport, yang mengubah daftar objek FieldEntry menjadi dokumen JSON yang dihasilkan oleh kedua metode ekspor.

Lihat Juga

 Bahasa Indonesia