Aspose.PDF FOSS for Python ist eine Open-Source-Bibliothek zum Erstellen, Lesen, Bearbeiten, Rendern und Validieren von PDF-Dokumenten. Entwickelt für Python 3.11 und höher, liefert sie Typinformation und lässt sich in jedes Python-Projekt integrieren (siehe den Installationsabschnitt unten). Das Projekt befindet sich derzeit in der Alpha-Phase, sodass APIs und Funktionsumfang weiterentwickelt werden, bevor die erste stabile Version erscheint.
Die Document-Klasse ist der zentrale Einstiegspunkt und stellt pages, form, outlines sowie tagged_content für strukturelle Bearbeitung bereit, neben den Operationen encrypt, decrypt, merge, optimize und flatten. Text wird mit Page.add_text() hinzugefügt und mit PdfExtractor und TextFragmentAbsorber extrahiert oder durchsucht, einschließlich phrasen- und regex-basierter Ersetzung und Redaktion. Seiten können über Page.render() und Page.save_as_image() als PNG- oder TIFF-Rasterbilder gerendert werden. Interaktive AcroForm-Felder werden über Form und Field erstellt und ausgefüllt, und Dokumente können mit Document.validate_pdfa(), Document.convert_to_pdfa() und Document.auto_tag() auf PDF/A- bzw. PDF/UA-Konformität geprüft oder konvertiert werden.
Aspose.PDF FOSS for Python wird unter der MIT-Lizenz veröffentlicht, ohne Laufzeitgebühren oder
Nutzungsbeschränkungen. Das Kernpaket hängt nur von cryptography und asn1crypto ab,
mit optionalen Extras für Pillow-basierte Bildunterstützung, Brotli-basierte WOFF2-Dekodierung und
HarfBuzz-basierte komplexe Textlayout-Funktionalität. Für Unternehmensfunktionen und Support siehe
Aspose.PDF für Python — Enterprise Product.
Document zusammenPageCollection, die als document.pages bereitgestellt wirdPage.add_text() hinzuPage.add_image()Page.draw_rectangle() und Page.draw_line()PdfExtractor und get_text()has_next_page_text() und get_next_page_text()TextFragmentAbsorberDocument.replace_text()Document.redact_text(), optional mit einer überlagernden LeistePage.render()Page.save_as_image()Document.save_page_as_image()dpi und die Kantenglättung mit antialiasRasterizedPageDocument.formForm.add_text_field()Form.add_checkbox() und Form.add_radio_group()Form.add_list_box() und Form.add_combo_box()Field.value und flachen Sie anschließend mit Document.flatten()Document.encrypt() unter Verwendung von Benutzer- und EigentümerkennwörternDocument.change_passwords() und Document.decrypt()PdfSignature.validate()PdfLoadLimitsValidationResultDocument.validate_pdfa() durchDocument.convert_to_pdfa()Document.validate_pdfua() durchDocument.auto_tag()Document.tagged_contentErstellen Sie ein neues PDF-Dokument und fügen Sie einer Seite positionierten Text in wenigen Zeilen hinzu.
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")
Laden Sie ein vorhandenes PDF und speichern Sie dessen erste Seite als Rasterbild bei einer konfigurierbaren 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)
Binde ein Dokument und ziehe den gesamten Text aller Seiten mit der Extractor-Fassade heraus.
from aspose_pdf import PdfExtractor
with PdfExtractor() as extractor:
extractor.bind_pdf("input.pdf")
extractor.extract_text()
print(extractor.get_text())
Fügen Sie mehrere PDF-Dateien zu einem einzigen Ausgabedokument zusammen.
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)