1. Produkte
  2.   Aspose.PDF
  3.   Aspose.PDF FOSS for Python

Aspose.PDF FOSS für Python

Open-Source Python Bibliothek zum Erstellen, Lesen, Bearbeiten, Rendern und Validieren von PDF-Dokumenten — MIT-lizenziert ohne Laufzeitgebühren.

Aspose.PDF FOSS — Open-Source Python PDF-Bibliothek

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.

Dokumenten- und Seitenoperationen

  • Erstelle, lade, speichere und füge PDFs über Document zusammen
  • Verwalte Seiten mit der veränderlichen PageCollection, die als document.pages bereitgestellt wird
  • Füge positionierten Standard-14- oder eingebetteten Unicode-Text mit Page.add_text() hinzu
  • Platziere rohe, JPEG- oder PNG-Bilder auf Seiten mit Page.add_image()
  • Zeichne Vektorformen mit Page.draw_rectangle() und Page.draw_line()

Praktische Szenarien

  • Rechnungen, Zertifikate und Berichte programmgesteuert erstellen
  • Dokumente stapelweise aus einer gemeinsamen Vorlage erzeugen
  • Mehrseitige Berichte aus generierten Abschnitten zusammenstellen
  • PDFs vollständig im Speicher innerhalb eines Webdienstes erstellen

Textextraktion und Suche

  • Extrahiere den gesamten Seitentext mit PdfExtractor und get_text()
  • Durchlaufe den Text seitenweise mit has_next_page_text() und get_next_page_text()
  • Suche exakte Phrasen und Regex-Muster mit TextFragmentAbsorber
  • Ersetze passenden Text mit Document.replace_text()
  • Schwärze passenden Text mit Document.redact_text(), optional mit einer überlagernden Leiste

Praktische Szenarien

  • Volltextsuchindizes über Dokumentenarchive erstellen
  • Personenbezogene Informationen vor dem Teilen schwärzen
  • Suchen-und-Ersetzen von Boilerplate-Texten in templatisierten Verträgen
  • Eingehende Dokumente auf sensible Begriffe prüfen

Seitenrendering zu Bildern

  • Rendern Sie eine Seite zu einem von Abhängigkeiten freien RGB-Raster mit Page.render()
  • Speichern Sie die gerenderte Ausgabe als PNG oder TIFF über Page.save_as_image()
  • Batch-Rendern Sie ganze Dokumente mit Document.save_page_as_image()
  • Steuern Sie die Auflösung mit dem Parameter dpi und die Kantenglättung mit antialias
  • Lesen Sie Rohpixeldaten aus dem zurückgegebenen RasterizedPage

Praktische Szenarien

  • Generieren Sie Seiten-Thumbnails für eine Dokumentenmanagement-Bibliothek
  • Erzeugen Sie druckfertige TIFF-Proofs aus fertigen Layouts
  • Erstellen Sie Seitenvorschau-Galerien für einen Dokumentenbetrachter
  • Konvertieren Sie alte PDF-Archive in bildbasierte Anzeigeformate

Formulare und interaktive Felder

  • Lesen und iterieren Sie die AcroForm-Felder über Document.form
  • Erstellen Sie Textfelder mit Form.add_text_field()
  • Erstellen Sie Kontrollkästchen und Radio-Gruppen mit Form.add_checkbox() und Form.add_radio_group()
  • Erstellen Sie Listen- und Kombinationsfelder mit Form.add_list_box() und Form.add_combo_box()
  • Setzen Sie Werte über den Feldnamen mit Field.value und flachen Sie anschließend mit Document.flatten()

Praktische Szenarien

  • Automatisieren Sie Pipelines zum Ausfüllen von Rechnungs- und Vertragsformularen
  • Vorbefüllen Sie Anwendungsvorlagen vor der Verteilung
  • Archivieren Sie ausgefüllte Formulare als nicht bearbeitbare PDFs mit statischem Inhalt
  • Extrahieren Sie übermittelte Feldwerte für die nachgelagerte Verarbeitung

Sicherheit, Verschlüsselung und Signaturen

  • Verschlüsseln Sie Dokumente mit Document.encrypt() unter Verwendung von Benutzer- und Eigentümerkennwörtern
  • Ändern oder löschen Sie Passwörter mit Document.change_passwords() und Document.decrypt()
  • Validieren Sie eingebettete digitale Signaturen mit PdfSignature.validate()
  • Begrenzen Sie nicht vertrauenswürdige Eingaben mit konfigurierbarem PdfLoadLimits
  • Untersuchen Sie den Unterzeichner, das Vertrauen und den Widerrufsstatus über ValidationResult

Praktische Szenarien

  • Vertrauliche Berichte mit passwort pro Empfänger schützen
  • Unterzeichnete Verträge vor der Archivierung prüfen
  • Eine PDF-Verarbeitungspipeline gegen bösartige Uploads absichern
  • Druck- und Kopierberechtigungsbeschränkungen für verteilte Dateien durchsetzen

PDF/A- und PDF/UA-Konformität

  • Führen Sie eine heuristische PDF/A-Validierung mit Document.validate_pdfa() durch
  • Konvertieren Sie Dokumente zu PDF/A mit Document.convert_to_pdfa()
  • Führen Sie heuristische PDF/UA-Barrierefreiheitsprüfungen mit Document.validate_pdfua() durch
  • Auto-Taggen Sie vorhandenen Seiteninhalt in einen Strukturbaum mit Document.auto_tag()
  • Untersuchen und bearbeiten Sie den Tag-Baum über Document.tagged_content

Praktische Szenarien

  • Bereiten Sie ausgehende Dokumente für die langfristige digitale Archivierung vor
  • Überprüfen Sie eingehende PDFs auf Barrierefreiheitslücken, bevor sie veröffentlicht werden
  • Erstellen Sie Konformitätsberichte für regulierte Branchen
  • Beheben Sie Barrierefreiheitsdefizite bei alten PDFs gemäß den Zugänglichkeitsstandards

PDF erstellen und Text hinzufügen

Erstellen 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")

Seite in ein Bild rendern

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)

Text aus einer PDF extrahieren

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())

PDF-Dateien zusammenführen

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)
  

Support und Lernressourcen

 Deutsch