Aspose.PDF FOSS for Python jest biblioteką open-source do tworzenia, odczytywania, edytowania, renderowania i walidacji dokumentów PDF. Zbudowana dla Python 3.11 i nowszych, dostarcza informacje o typach i integruje się z każdym projektem Python (zobacz sekcję instalacji poniżej). Projekt jest obecnie w fazie alfa, więc API i zakres funkcji nadal się rozwijają przed pierwszym stabilnym wydaniem.
Klasa Document jest centralnym punktem wejścia, udostępniając pages, form, outlines,
i tagged_content do strukturalnej edycji wraz z operacjami encrypt, decrypt, merge,
optimize oraz flatten. Tekst jest dodawany za pomocą Page.add_text() i wyodrębniany
lub wyszukiwany przy użyciu PdfExtractor i TextFragmentAbsorber, w tym wymiana i redakcja oparta na frazach i
na wyrażeniach regularnych. Strony renderują się do rastrowych obrazów PNG lub TIFF przy użyciu
Page.render() i Page.save_as_image(). Interaktywne pola AcroForm są tworzone i
wypełniane za pomocą Form i Field, a dokumenty mogą być sprawdzane lub konwertowane w kierunku
zgodności z PDF/A i PDF/UA przy użyciu Document.validate_pdfa(), Document.convert_to_pdfa(),
oraz Document.auto_tag().
Aspose.PDF FOSS for Python jest udostępniany na licencji MIT bez opłat runtime ani
ograniczeń w użytkowaniu. Pakiet podstawowy zależy wyłącznie od cryptography i asn1crypto,
z opcjonalnymi dodatkami dla obsługi obrazów opartych na Pillow, dekodowania WOFF2 opartego na Brotli oraz
złożonego układu tekstu opartego na HarfBuzz. Aby uzyskać funkcje i wsparcie dla przedsiębiorstw, zobacz
Aspose.PDF for Python — Enterprise Product.
DocumentPageCollection udostępnionej jako document.pagesPage.add_text()Page.add_image()Page.draw_rectangle() i Page.draw_line()PdfExtractor i get_text()has_next_page_text() i get_next_page_text()TextFragmentAbsorberDocument.replace_text()Document.redact_text(), opcjonalnie rysując pasek nakładkiPage.render()Page.save_as_image()Document.save_page_as_image()dpi oraz jakość krawędzi przy użyciu antialiasRasterizedPageDocument.formForm.add_text_field()Form.add_checkbox() i Form.add_radio_group()Form.add_list_box() i Form.add_combo_box()Field.value, a następnie spłaszcz dokument przy użyciu Document.flatten()Document.encrypt() z hasłami użytkownika i właścicielaDocument.change_passwords() i Document.decrypt()PdfSignature.validate()PdfLoadLimitsValidationResultDocument.validate_pdfa()Document.convert_to_pdfa()Document.validate_pdfua()Document.auto_tag()Document.tagged_contentUtwórz nowy dokument PDF i dodaj tekst o określonej pozycji na stronie w kilku linijkach.
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")
Wczytaj istniejący PDF i zapisz jego pierwszą stronę jako obraz rastrowy przy konfigurowalnym DPI.
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)
Powiąż dokument i wyciągnij cały tekst jego stron za pomocą fasady ekstraktora.
from aspose_pdf import PdfExtractor
with PdfExtractor() as extractor:
extractor.bind_pdf("input.pdf")
extractor.extract_text()
print(extractor.get_text())
Połącz kilka plików PDF w jeden dokument wyjściowy.
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)