Các hình thức tương tác

Hướng dẫn này cho bạn thấy cách tạo và quản lý các trường AcroForm trong tài liệu PDF bằng cách sử dụng Aspose.PDF FOSS for Java. Bạn sẽ học thêm nút radio, hộp kiểm tra, trường văn bản, các hộpon hợp tác và hộps danh sách, và để lấy lại giá trị của các lĩnh vực được gửi.

Áp dụng API

Các Form lớp học, có thể truy cập qua Document.getForm(), quản lý tất cả các trường AcroForm trong tài liệu.Thông tin được thêm bằng cách gọi Form.add(field, pageNumber).

RadioButtonField

Tạo một nhóm các nút radio, mỗi tùy chọn riêng của mình Rectangle.Mỗi lựa chọn là thêm với một nhãn và hộp giới hạn. setValue() Để chọn một tùy chọn:

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

setValue() Chọn một tùy chọn theo lập trình. getValue() Trở lại hiện tại Tên tùy chọn được lựa chọn.

CheckboxField

CheckboxField đại diện cho một trường nhập boolean duy nhất trong biểu mẫu PDF. setChecked(true) để làm cho trường được kiểm tra theo mặc định. thêm vào biểu mẫu tại a Số trang cụ thể (1-indexed):

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

TextBoxField

TextBoxField chấp nhận nhập văn bản tự do. thiết lập giá trị mặc định với setValue() và Đăng ký trường với biểu mẫu trước khi tiết kiệm:

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("Default text");
    doc.getForm().add(text, 1);
    doc.save("form.pdf");
}

Tải về ComboBoxField và ListBoxFeld

ComboBoxFieldListBoxField Danh sách tùy chọn có sẵn. cả hai chấp nhận Lựa chọn qua addOption() và triển khai getValue() để lấy lại sự lựa chọn.

FormEditor

FormEditor là một lớp facade để làm việc với các trường AcroForm. Liên kết tài liệu Với bindPdf(), áp dụng thay đổi, sau đó gọi save().

Đọc giá trị lĩnh vực

Sau khi tải một biểu mẫu đã điền, lấy giá trị hiện tại của một trường được đặt tên bằng cách gọi doc.getForm().get(name) và ném vào loại trường cụ thể:

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

See Also

 Tiếng Việt