Buat AcroForm - Buat PDF yang dapat diisi dalam Python
Buat Form dari Awal
Tambahkan Form Field dalam Dokumen PDF
The Document kelas menyediakan koleksi bernama Form yang membantu Anda mengelola bidang formulir dalam dokumen PDF.
Untuk menambahkan bidang formulir:
- Buat bidang formulir yang ingin Anda tambahkan.
- Panggil koleksi Form tambahkan metode.
Menambahkan TextBoxField
Contoh berikut menunjukkan cara menambahkan BidangKotakTeks.
import aspose.pdf as ap
import aspose.pydrawing as drawing
def add_text_box_field(output_file_name):
document = ap.Document()
page = document.pages.add()
rectangle = ap.Rectangle(10, 600, 110, 620, True)
text_box_field = ap.forms.TextBoxField(page, rectangle)
text_box_field.partial_name = "textbox1"
text_box_field.value = "Text Box"
text_box_field.default_appearance = ap.annotations.DefaultAppearance(
"Arial", 10, drawing.Color.dark_blue
)
border = ap.annotations.Border(text_box_field)
border.width = 1
border.style = ap.annotations.BorderStyle.DASHED
border.dash = ap.annotations.Dash(3, 3)
text_box_field.border = border
text_box_field.characteristics.border = ap.Color.red.to_rgb()
text_box_field.characteristics.background = ap.Color.yellow.to_rgb()
document.form.add(text_box_field, 1)
document.save(output_file_name)
Bidang Kotak Teks Multi-Widget dalam PDF
Buat sebuah bidang formulir kotak teks dengan beberapa penampilan widget dalam PDF menggunakan Python dan Aspose.PDF. Ini menempatkan beberapa area input teks pada sebuah halaman, menerapkan font dan warna yang berbeda pada setiap widget, menyesuaikan batas, dan mengatur gaya latar belakang untuk formulir PDF interaktif.
- Buat Dokumen PDF Baru.
- Definisikan Posisi Kolom Teks.
- Buat Penampilan Default yang Berbeda.
- Buat bidang Kotak Teks.
- Terapkan Penampilan pada Setiap Widget.
- Sesuaikan Gaya Border.
- Tambahkan Field ke Form.
- Simpan File PDF.
import aspose.pdf as ap
import aspose.pydrawing as drawing
def add_text_box_field_nt(output_file_name):
document = ap.Document()
page = document.pages.add()
rects = [
ap.Rectangle(10, 600, 110, 620, normalize_coordinates=True),
ap.Rectangle(10, 630, 110, 650, normalize_coordinates=True),
ap.Rectangle(10, 660, 110, 680, normalize_coordinates=True),
]
default_appearances = [
ap.annotations.DefaultAppearance("Arial", 10, drawing.Color.dark_blue),
ap.annotations.DefaultAppearance("Helvetica", 12, drawing.Color.dark_green),
ap.annotations.DefaultAppearance(
ap.text.FontRepository.find_font("Calibri"), 14, drawing.Color.dark_magenta
),
]
text_box_field = ap.forms.TextBoxField(page, rects)
text_box_field.partial_name = "textbox1"
text_box_field.value = "Some text"
for i, widget in enumerate(text_box_field):
widget.default_appearance = default_appearances[i]
border = ap.annotations.Border(text_box_field)
border.width = 1
border.style = ap.annotations.BorderStyle.DASHED
border.dash = ap.annotations.Dash(3, 3)
text_box_field.border = border
text_box_field.characteristics.border = ap.Color.red.to_rgb()
text_box_field.characteristics.background = ap.Color.yellow.to_rgb()
document.form.add(text_box_field)
document.save(output_file_name)
Menambahkan Bidang Form Lain
Cuplikan kode berikut menunjukkan cara menambahkan berbagai jenis bidang, seperti tombol radio, kotak kombo, kotak centang, kotak daftar, bidang tanda tangan, dan bidang kode batang. Setiap fungsi membuat dokumen PDF baru, menambahkan bidang target dengan opsi yang dipilih, dan menyimpan file yang telah diperbarui.
- Tambahkan Bidang Tombol Radio
- Tambahkan Field Combo Box
- Tambahkan Bidang Kotak Centang
- Tambahkan Bidang Kotak Daftar
- Tambahkan Bidang Tanda Tangan
- Tambahkan Field Barcode
Tambahkan Bidang Tombol Radio
import aspose.pdf as ap
import aspose.pydrawing as drawing
def add_radio_button(output_file_name):
document = ap.Document()
document.pages.add()
radio = ap.forms.RadioButtonField(document.pages[1])
radio.add_option(
"Option 1", ap.Rectangle(100, 640, 120, 680, normalize_coordinates=True)
)
radio.add_option(
"Option 2", ap.Rectangle(140, 640, 160, 680, normalize_coordinates=True)
)
document.form.add(radio)
document.save(output_file_name)
Tambahkan Field Combo Box
import aspose.pdf as ap
import aspose.pydrawing as drawing
def add_combo_box(output_file_name):
document = ap.Document()
page = document.pages.add()
combo = ap.forms.ComboBoxField(
page, ap.Rectangle(100, 640, 150, 656, normalize_coordinates=True)
)
combo.add_option("Red")
combo.add_option("Yellow")
combo.add_option("Green")
combo.add_option("Blue")
combo.selected = 3
document.form.add(combo)
document.save(output_file_name)
Tambahkan Bidang Kotak Centang
import aspose.pdf as ap
import aspose.pydrawing as drawing
def add_checkbox_field_to_pdf(output_file_name):
document = ap.Document()
page = document.pages.add()
checkbox = ap.forms.CheckboxField(
page, ap.Rectangle(50, 620, 100, 650, normalize_coordinates=True)
)
checkbox.characteristics.background = ap.Color.aqua.to_rgb()
checkbox.style = ap.forms.BoxStyle.CIRCLE
document.form.add(checkbox)
document.save(output_file_name)
Tambahkan Bidang Kotak Daftar
import aspose.pdf as ap
import aspose.pydrawing as drawing
def add_list_box_field_to_pdf(output_file_name):
document = ap.Document()
page = document.pages.add()
list_box = ap.forms.ListBoxField(
page, ap.Rectangle(50, 650, 100, 700, normalize_coordinates=True)
)
list_box.partial_name = "list"
list_box.add_option("Red")
list_box.add_option("Green")
list_box.add_option("Blue")
document.form.add(list_box)
document.save(output_file_name)
Tambahkan Bidang Tanda Tangan
import aspose.pdf as ap
import aspose.pydrawing as drawing
def add_signature_field(output_file_name):
document = ap.Document()
page = document.pages.add()
signature_field = ap.forms.SignatureField(
page, ap.Rectangle(100, 700, 200, 800, True)
)
signature_field.partial_name = "Signature1"
document.form.add(signature_field)
document.save(output_file_name)
Tambahkan Field Barcode
import aspose.pdf as ap
import aspose.pydrawing as drawing
def add_barcode_field(output_file_name):
document = ap.Document()
page = document.pages.add()
barcode = ap.forms.BarcodeField(page, ap.Rectangle(100, 700, 200, 740, True))
barcode.partial_name = "Barcode1"
barcode.add_barcode("1234567890")
document.form.add(barcode)
document.save(output_file_name)