Aspose.PDF FOSS for Python adalah perpustakaan open-source untuk membuat, membaca, mengedit, merender, dan memvalidasi dokumen PDF. Dibangun untuk Python 3.11 dan yang lebih baru, ia menyertakan informasi tipe dan terintegrasi ke dalam proyek Python mana pun (lihat bagian install di bawah). Proyek ini saat ini dalam tahap alpha, sehingga API dan cakupan fitur terus berkembang menjelang rilis stabil pertama.
Kelas Document adalah titik masuk utama, menyediakan pages, form, outlines, dan tagged_content untuk penyuntingan struktural bersama operasi encrypt, decrypt, merge, optimize, dan flatten. Teks ditambahkan dengan Page.add_text() dan diekstrak atau dicari dengan PdfExtractor dan TextFragmentAbsorber, termasuk penggantian berbasis frasa dan regex serta redaksi. Halaman dirender menjadi gambar raster PNG atau TIFF melalui Page.render() dan Page.save_as_image(). Bidang AcroForm interaktif dibuat dan diisi melalui Form dan Field, dan dokumen dapat diperiksa atau dikonversi menuju kepatuhan PDF/A dan PDF/UA dengan Document.validate_pdfa(), Document.convert_to_pdfa(), dan Document.auto_tag().
Aspose.PDF FOSS for Python dirilis di bawah lisensi MIT tanpa biaya runtime atau pembatasan penggunaan. Paket inti hanya bergantung pada cryptography dan asn1crypto, dengan ekstra opsional untuk dukungan gambar berbasis Pillow, decoding WOFF2 berbasis Brotli, dan layout teks kompleks berbasis HarfBuzz. Untuk fitur enterprise dan dukungan, lihat Aspose.PDF untuk Python — Enterprise Product.
DocumentPageCollection yang dapat diubah yang diekspos sebagai document.pagesPage.add_text()Page.add_image()Page.draw_rectangle() dan Page.draw_line()PdfExtractor dan get_text()has_next_page_text() dan get_next_page_text()TextFragmentAbsorberDocument.replace_text()Document.redact_text(), secara opsional menggambar bar overlayPage.render()Page.save_as_image()Document.save_page_as_image()dpi dan kualitas tepi dengan antialiasRasterizedPage yang dikembalikanDocument.formForm.add_text_field()Form.add_checkbox() dan Form.add_radio_group()Form.add_list_box() dan Form.add_combo_box()Field.value, kemudian ratakan dengan Document.flatten()Document.encrypt() menggunakan kata sandi pengguna dan pemilikDocument.change_passwords() dan Document.decrypt()PdfSignature.validate()PdfLoadLimits yang dapat dikonfigurasiValidationResultDocument.validate_pdfa()Document.convert_to_pdfa()Document.validate_pdfua()Document.auto_tag()Document.tagged_contentBuat dokumen PDF baru dan tambahkan teks berposisi ke sebuah halaman dalam beberapa baris.
git clone https://github.com/aspose-pdf-foss/Aspose-PDF-FOSS-for-Python.git
cd Aspose-PDF-FOSS-for-Python
pip install -e .from aspose_pdf import Document
with Document() as document:
page = document.pages.add()
page.add_text(
"Hello from Aspose.PDF FOSS!",
x=72,
y=720,
font_size=18,
)
document.save("hello.pdf")
Muat PDF yang ada dan simpan halaman pertamanya sebagai gambar raster dengan DPI yang dapat dikonfigurasi.
from aspose_pdf import Document
with Document() as document:
document.load_from("input.pdf")
document.pages[0].save_as_image("page-1.png", dpi=144)
Ikat dokumen dan ambil semua teks halamanannya dengan facade extractor.
from aspose_pdf import PdfExtractor
with PdfExtractor() as extractor:
extractor.bind_pdf("input.pdf")
extractor.extract_text()
print(extractor.get_text())
Menggabungkan beberapa file PDF menjadi satu dokumen output.
from aspose_pdf import PdfFileEditor
with PdfFileEditor() as editor:
if not editor.concatenate(["part-1.pdf", "part-2.pdf"], "merged.pdf"):
raise RuntimeError(editor.last_exception)