PDFium Delphi Component Docs

PAdES-Signatur · PDF 2.0-Verschlüsselung · sechs ISO-Standards · Delphi / C++Builder / Lazarus

Alles, was eine Rendering-Engine nicht kann – in Object Pascal geschrieben

Eine Engine zeichnet Seiten und liest Strukturen. Sie kann kein Dokument signieren, keine Verschlüsselung schreiben, keinen PDF-Standard validieren und keine linearisierte oder inkrementelle Revision ausgeben. PDFium Delphi Component implementiert all das oberhalb von PDFium: mehr als 62.000 Zeilen in 36 Units ohne Gegenstück in der Engine-API, dazu die Viewer- und die barrierefreie Vorlese-Architektur – und jede Zeile wird als Quelltext ausgeliefert

Vollständige Übersicht lesen Funktionskatalog durchsuchen

Was Sie über die Engine hinaus erhalten

Jeder Punkt unten ist eine gelieferte Fähigkeit, die Sie in der API-Referenz und den Demos überprüfen können

Digitale Signaturen statt nur Signaturlesen

Die Engine kann lediglich melden, dass ein Signatur-Wörterbuch existiert. Diese Bibliothek erzeugt eines: PAdES-Baseline B-B, B-T, B-LT und B-LTA gemäß ETSI EN 319 142-1, CMS-/CAdES-SignedData nach RFC 5652, RFC 3161-Zeitstempelanforderungen, Document Security Store-Injektion, Archivzeitstempel und Vertrauensprüfung der Zertifikatskette. Remote- und HSM-Signatur trennen den Vorgang, sodass der private Schlüssel nie die Workstation erreichen muss

SignPades / ValidatePadesTrust / PreparePadesRemoteSignature

Verschlüsselung, die Sie schreiben – nicht nur öffnen

ISO 32000-2 AES-256 mit der R6-Schlüsselableitung gemäß Algorithmus 2.B, die vollständige Stream- und String-Verschlüsselung, ISO/TS 32003 AES-GCM und ISO/TS 32004 PDF MAC-Token. Die AES-, SHA-2-, SHA-3-, HMAC- und ASN.1-Primitiven sind reines Object Pascal, geprüft gegen die veröffentlichten FIPS-Testvektoren – keine externe C-Bibliothek gelangt in Ihre Bereitstellung oder Ihre Sicherheitsprüfung

SaveAsEncrypted; FPdfAes / FPdfSha512 / FPdfAsn1

Ein PDF-Writer, den die Engine nicht mitbringt

Die Engine bietet eine einzige sequenzielle Speicherung der gesamten Datei. Diese Bibliothek schreibt darauf aufbauend eigene Revisionen: linearisiertes Fast Web View mit Hint-Tabellen nach Annex F, Object-Stream- und Xref-Stream-Packung sowie inkrementelle Revisionen geänderter Objekte, die die vorherige Ausgabe byte für byte erhalten. Beschädigte Dateien erhalten strenge, kompatible und Wiederherstellungs-Ladestrategien mit strukturierten Diagnosen statt stiller Reparatur

SaveAsLinearized / SaveAsObjectStream / BeginIncrementalSave / SaveAsRepaired

Inhaltsextraktion über reinen Text hinaus

GetStructuredText baut aus Zeichengeometrie und Tagged-PDF-Semantik eine Hierarchie aus Seite, Block, Zeile und Formatspan auf. ExtractTables erkennt Tabellen mit Rahmen und an Leerraum ausgerichtete Tabellen, erhält verbundene Zellbereiche bei und gibt CSV oder JSON aus. BuildReflowDocument verwandelt ein PDF mit festem Layout in semantisches HTML. XFDF und FDF tauschen Formulardaten und 18 Anmerkungssubtypen aus – Formate, für die die Engine überhaupt keine API bereitstellt

ExtractTables / BuildReflowDocument / ExportXFDF

Breiteste IDE-Abdeckung in ihrer Klasse

Delphi / C++Builder (RAD Studio XE5 bis 13.1 Florence) plus Lazarus / Free Pascal 3.8+, Win32 und Win64. Drei IDE-Familien teilen sich dieselben Test-PDFs und Regressions-Suiten

1257 Pascal- + 515 C++-Testfälle, bytegleich

Vollständiges PDF-Standardspektrum

PDF/A-1b-Ausgabe (SaveAsPdfA) + Validierung (ValidatePdfA), dazu PDF/UA-, PDF/E-, PDF/X-, PDF/R- und PDF/VT-Validatoren mit Ergebnis-Codes auf Klauselebene, Marker-Injektion und Versionskonformitäts-Gate. PDF/A deckt ISO 19005 Teil 1 bis 4 ab, PDF/X reicht bis X-6, PDF/VT umfasst das VT-2s-Stream-Packaging

Eigene Units FPdfPdfa/Pdfua/Pdfe/Pdfx/Pdfr/Pdfvt.pas

Barrierefreies Vorlesen / Sehhilfen

TPdfReadingSession orchestriert das Vorlesen für Host-TTS-Engines (Leseeinheiten auf Satzebene, Hervorhebung auf Wortebene, gesprochenen-Text-Mapping); plus InvertPdfBitmap, GrayscalePdfBitmap, DuotonePdfBitmap Sehhilfen-Transformationen und Live-Nacht-Duotone-Anzeige

Eine Barrierefreiheits-Schicht, die den meisten Wrappern völlig fehlt

Zero-Copy + abbrechbares progressives Rendering

Der Render-Pfad schreibt die PDFium-Ausgabe direkt in den DIB-Puffer der Ziel-TBitmap und überspringt eine vollständige Pixelkopie der Seite pro Frame; RenderPageProgressive fragt ein Abbruch-Token zwischen den Iterationen ab und kann mitten im Rendern unterbrochen werden

Spart eine Breite×Höhe×4-Byte-Kopie pro Frame bei hohem DPI

On-Demand-Streaming für mehrige MB große PDFs

Über den On-Demand-TStream-Adapter von LoadCustomDocument liest PDFium blockweise – mehrige MB große, entfernte oder datenbankgestützte Dokumente laden ohne In-Memory-Kopie, und eine verwendbare erste Ansicht ist fast sofort erreicht

2.x-GB-Dokumente: nahezu sofortige erste Ansicht

Drei Komponenten + 33 gemeinsame Demos

TPdf (Dokument-Engine), TPdfView (interaktiver Viewer), TPdfThumbnailView (Miniatur-Navigation); 33 drei-IDE-geteilte COMMON-Demos decken Anzeige, Suche, Formularausfüllung, Zusammenführen/Aufteilen, Stapel-Export, Drucken, Sicherheits-Audit, Preflight-Berichte und mehr ab

PDFViewer / PreflightReport / SecurityAudit / StandardsLab usw.

Sicherheitsorientierte Standards

Link-Aktion-Allow-List (LinkOptions), Launch-Aktionen standardmäßig deaktiviert und eine SecurityAudit-Demo zum Prüfen von Risiko-Flächen – sicher direkt ab Werk statt standardmäßig gefährliche Aktionen offen

Geeignet für sicherheitssensible Finanz-/Gesundheits-Bereitstellungen

Quelltext enthalten · lizenzgebührenfrei · langfristiger Support

Liefert Pascal-Quelltext, keine Laufzeit-Lizenzgebühren, langfristige Wartung. Enthält Win32/Win64-pdfium.dll und pdfium.v8.dll (V8/XFA-aktiviert), mit optionalen Skia-Render-Hooks

Keine Gebühren pro Bereitstellung

Die Nachweise

3IDE-Familien: Delphi / C++Builder / Lazarus
6+PDF-Standards: A / UA / E / X / R / VT
33drei-IDE-geteilte COMMON-Demos
1770+Pascal- + C++-Regressions-Testfälle

Wer PDFium Delphi Component wählen sollte

Dokumenten-Viewer / Reader

Eingebettete PDF-Viewer, die produktionsreife Renderqualität und Interaktion benötigen (Textauswahl, Such-Hervorhebung, Links, Zoom, fortlaufende Zwei-Seiten-Anzeige)

Barrierefreiheit / Hilfstechnologien

Vorlese-Orchestrierung und Sehhilfen-Transformationen für sehbeeinträchtigte Nutzer – eine Schicht, die die meisten PDF-Wrapper gar nicht haben

Compliance-/Preflight-Toolketten

Die PDF/A-Erzeugung und -Validierung, PDF/UA-Barrierefreiheit, Versions-Prüfung und CI-freundliche Preflight-Berichte benötigen

Große / entfernte Dokumente

Mehrige GB große oder datenbankgestützte PDFs, die bei Bedarf laden müssen, statt vollständig im Speicher gehalten zu werden

Cross-IDE-Teams

Teams, die Delphi, C++Builder und Lazarus zugleich nutzen – ein Komponentenset, dieselben Fixtures, dieselben Demos

Sicherheitssensitive Bereitstellungen

Finanz-, Gesundheits- und Regierungs-Szenarien mit strenger Kontrolle über Link-/Launch-Aktionen

Eine Seite in wenigen Zeilen rendern

Kein handgeschriebenes C-Interop – direkte native Pascal-Komponenten:

uses PDFium;

var
  Pdf: TPdf;
  Bmp: TBitmap;
begin
  Pdf := TPdf.Create(nil);
  try
    Pdf.FileName := 'report.pdf';
    Pdf.Active := True;
    Pdf.PageNumber := 0;              // pages are zero-based

    Bmp := Pdf.RenderPage(0, 0,
      Round(PointsToPixels(Pdf.PageWidth, 150)),
      Round(PointsToPixels(Pdf.PageHeight, 150)));
    try
      Bmp.SaveToFile('page1.bmp');
    finally
      Bmp.Free;
    end;
  finally
    Pdf.Free;
  end;
end;

Nächste Schritte

Beginnen Sie mit der Produktübersicht und dem Schnellstart, durchsuchen Sie den vollständigen Funktionskatalog und die Beispiele, oder lesen Sie die Versionshinweise für die neuesten Lieferungen