Delphi 7 bis 13 & C++ Builder Keine DLLs

sgcPDF, eine reine Pascal-PDF-Bibliothek für Delphi & C++ Builder

PDF-Dateien erstellen, bearbeiten, anzeigen, rendern, extrahieren, verschlüsseln, signieren, schwärzen und validieren, mit Komponenten, die vollständig in Object Pascal geschrieben sind. Es gibt keine DLL zum Verteilen und keine externe PDF-Engine: Parser, Writer, Schriftarten, Bilddecoder, Renderer und Kryptografie sind in Ihre Anwendung einkompiliert. Der Kern läuft unter Windows, Linux, macOS, iOS und Android, mit einem VCL-Viewer-Steuerelement, einem FireMonkey-Viewer und einem Raster-Renderer für Server. Der vollständige Quellcode ist enthalten.

Vollständiger Quellcode
Windows, Linux, macOS, iOS & Android
Delphi 7 → 13, C++ Builder
Keine externen Abhängigkeiten
15 Komponenten sgcPDF_*.pas PDF 1.0 bis 2.0, Lesen und Schreiben, in reinem Object Pascal.
Erstellen TsgcPDFDocument
Bearbeiten TsgcPDFEditor
Anzeigen TsgcPDFViewerControl
Extrahieren TsgcPDFTextExtractor
Signieren PAdES B-B to B-LTA
PDF/A & PDF/UA TsgcPDFAValidator
Schwärzen TsgcPDFRedactor
15 Paletten-Komponenten Dokument, Editor, Viewer, Extraktoren, Signierung
0 Zu verteilende DLLs Parser, Renderer, Schriftarten und Kryptografie in Pascal
5 Betriebssysteme Windows, Linux, macOS, iOS, Android
6 PDF/A-Konformitätsstufen PDF/A-1, 2 und 3, Stufen a und b, plus PDF/UA-1

Drei Dinge, die Sie vorher wissen sollten

Nichts, was auf der Zielmaschine installiert werden muss

sgcPDF umhüllt weder PDFium, Ghostscript, einen COM-Server noch eine andere native Bibliothek. Parsen, Schreiben, Schrifteinbettung und -teilmengenbildung, Bilddekodierung, Rendering, Verschlüsselung und Signierung sind in den sgcPDF_*.pas-Units implementiert, sodass Ihre ausführbare Datei die gesamte Bereitstellung ist.

Die Kern-Units haben keine VCL- oder FMX-Abhängigkeit, sodass derselbe Code in einem Konsolentool, einem Windows-Dienst, einem Linux-Dämon oder einem Webserver läuft.

Plattformumfang

Welche Teile wo laufen

Erstellung, Bearbeitung, Text- und Bildextraktion, Formulare, Verschlüsselung, Signaturen, Schwärzung, PDF/A und der Raster-Renderer kompilieren für Windows und Linux64 sowie für macOS, iOS und Android. Der GDI-Renderer, der Exporter und die VCL-Viewer-Steuerelemente sind nur unter Windows verfügbar, und TsgcPDFViewerFMX deckt Windows, macOS, iOS und Android ab.

Erweiterte Signaturen

PAdES über sgcSign, einfache Signierung integriert

sgcPDF signiert und verifiziert PDF-Dateien eigenständig mit einem PFX-Zertifikat. Für die PAdES-Baseline-Stufen B-B, B-T, B-LT und B-LTA sowie für Schlüssel auf Smartcards, im Windows-Zertifikatspeicher oder in Cloud-HSMs verwendet die optionale TsgcPDFPAdESSigner-Brücke die Schlüsselanbieter von sgcSign, das separat lizenziert wird.

Eine Bibliothek für den gesamten PDF-Lebenszyklus

Von der ersten Seite, die Sie schreiben, bis zur signierten, archivierten und geschwärzten Datei, die Sie übergeben, läuft jeder Schritt in derselben Object-Pascal-Codebasis.

Erstellen: Dokumente aus Code, HTML oder einer Zeichenfläche

Seiten, Text in den 14 Standardschriftarten oder eingebettete und in Teilmengen zerlegte TrueType- und OpenType-Schriftarten, Bilder (JPEG, PNG, BMP, TIFF), Linien, Kurven, Farbverläufe, seitenübergreifende Tabellen, Barcodes und QR-Codes, Anmerkungen, Lesezeichen und optionale Inhaltsebenen. TsgcPDFHTMLRenderer wandelt HTML mit CSS in paginiertes PDF um, und TsgcPDFCanvas sowie EMF-Wiedergabe konvertieren vorhandenen Zeichencode.

Funktionen ansehen →

Bearbeiten: Dateien ändern, die Sie nicht selbst erstellt haben

Wasserzeichen, Kopf- und Fußzeilen, Seitenzahlen und Stempel, Zusammenführen und Aufteilen, Extrahieren, Einfügen, Löschen, Drehen und Neuordnen von Seiten. Das inkrementelle Speichern hängt eine neue Revision an die ursprüngliche Datei an, wodurch frühere Signaturen gültig bleiben.

Funktionen ansehen →

Anzeigen & Rendern: VCL- und FMX-Viewer, plus ein Server-Renderer

Ein VCL-Viewer-Steuerelement mit Miniaturansichten, Gliederung, Textauswahl, Suche, Formularausfüllung und Drucken, ein FireMonkey-Viewer für Windows, macOS, iOS und Android sowie ein reiner Pascal-Raster-Renderer, der Seiten ohne GDI auf Windows- und Linux-Servern in PNG umwandelt.

Funktionen ansehen →

Extrahieren: Text, Positionen und Bilder

Reiner Text pro Seite oder für das gesamte Dokument, Textfragmente mit Koordinaten, Schriftart und -größe sowie die Bilder einer Seite, dekodiert nach PNG, JPEG oder BMP. Die Decoder decken Flate, LZW, ASCII85, RunLength, JPEG (Baseline und progressiv), JPEG 2000, CCITT G3/G4 und JBIG2 ab.

Funktionen ansehen →

Sichern & Signieren: Verschlüsselung, Signaturen, Schwärzung

RC4 40/128, AES-128- und AES-256-Passwortverschlüsselung, Zertifikatsverschlüsselung (Public Key), digitale Signaturen mit sichtbaren Feldern und Zeitstempeln, PAdES B-B, B-T, B-LT und B-LTA über die sgcSign-Brücke, Signaturverifizierung und echte Schwärzung, die Inhalte entfernt statt sie nur zu überdecken.

Funktionen ansehen →

Konform: PDF/A, PDF/UA, getaggtes PDF, Factur-X

PDF/A-1-, PDF/A-2- und PDF/A-3-Ausgabe in den Stufen a und b mit integriertem Validator, getaggtes PDF mit Strukturbaum und Alternativtext, PDF/UA-1-Prüfungen, eingebettete Dateien mit PDF/A-3-Beziehungen sowie Factur-X-, ZUGFeRD- und XRechnung-E-Rechnungs-Einbettung.

Funktionen ansehen →

Ein paar Zeilen Delphi

Jedes Beispiel auf dieser Seite stammt aus einem Programm, das gegen die sgcPDF-Quellen kompiliert und ausgeführt wurde. Koordinaten sind in PDF-Punkten (1/72 Zoll) angegeben, mit dem Ursprung in der unteren linken Ecke der Seite.

procedure CreateHelloPDF(const AFileName: string);
var
  oPDF: TsgcPDFDocument;
  oPage: TsgcPDFPage;
begin
  oPDF := TsgcPDFDocument.Create;
  try
    oPDF.Info.Title := 'Hello sgcPDF';
    // A4 portrait: 595 x 842 points, origin at the bottom left corner
    oPage := oPDF.AddPage(595, 842);
    oPage.DrawTextColor('Hello sgcPDF', 50, 780, sfHelveticaBold, 24, 0, 0.2, 0.6);
    oPage.DrawLine(50, 770, 545, 770, 1.5);
    oPage.DrawText('A PDF written in pure Pascal.', 50, 740, sfHelvetica, 12);
    oPDF.SaveToFile(AFileName);
  finally
    oPDF.Free;
  end;
end;
procedure StampExistingPDF(const AInput, AOutput: string);
var
  oEditor: TsgcPDFEditor;
  oWatermark: TsgcPDFWatermarkOptions;
begin
  oEditor := TsgcPDFEditor.Create;
  try
    oEditor.LoadFromFile(AInput);
    oWatermark.Text := 'CONFIDENTIAL';
    oWatermark.Font := sfHelveticaBold;
    oWatermark.FontSize := 48;
    oWatermark.Rotation := 45;
    oWatermark.Opacity := 0.3;
    oWatermark.R := 0.5;
    oWatermark.G := 0.5;
    oWatermark.B := 0.5;
    oEditor.AddWatermarkAllPages(oWatermark);
    oEditor.AddPageNumbers(sfHelvetica, 10, 'Page %d of %d');
    oEditor.SaveToFile(AOutput);
  finally
    oEditor.Free;
  end;
end;
procedure PrintAllText(const AFileName: string);
var
  oPDF: TsgcPDFDocument;
  i: Integer;
begin
  oPDF := TsgcPDFDocument.Create;
  try
    oPDF.LoadFromFile(AFileName);
    for i := 0 to oPDF.PageCount - 1 do
      WriteLn(string(oPDF.ExtractTextW(i)));
  finally
    oPDF.Free;
  end;
end;
procedure RenderPageToPNG(const APDFFile, APNGFile: string; ADPI: Integer);
var
  oPDF: TsgcPDFDocument;
  oRenderer: TsgcPDFRendererRaster;
  oPage: TsgcPDFPage;
begin
  oPDF := TsgcPDFDocument.Create;
  try
    oPDF.LoadFromFile(APDFFile);
    oPage := oPDF.Pages[0];
    // pure Pascal rasterizer: no GDI, runs on Windows and Linux servers
    oRenderer := TsgcPDFRendererRaster.Create;
    try
      oRenderer.RenderPageToPNG(oPDF.Parser, oPage.PageDict,
        Round(oPage.Width * ADPI / 72), Round(oPage.Height * ADPI / 72),
        APNGFile);
    finally
      oRenderer.Free;
    end;
  finally
    oPDF.Free;
  end;
end;

15 Komponenten auf der sgcPDF-Palette

Ziehen Sie sie auf ein Formular oder ein Datenmodul, oder erstellen Sie sie im Code. Jede Komponente ist auch ohne Formular nutzbar, aus Konsolenanwendungen und Diensten.

Alle Komponenten

Testversion & Lizenzierung

sgcPDF ist ein neues Produkt. Kontaktieren Sie eSeGeCe, um eine Testversion oder ein Angebot anzufordern. Wie bei jeder eSeGeCe-Bibliothek ist der vollständige Quellcode in der Lizenz enthalten.

sgcPDF

  • Alle 15 Komponenten und die sgcPDF_*.pas-Units
  • Delphi 7 bis 13 und C++ Builder
  • Windows, Linux, macOS, iOS und Android
  • Vollständiger Quellcode

Weitere Produkte von eSeGeCe

Kombinieren Sie sgcPDF mit unseren anderen Delphi- und C++Builder-Komponentenbibliotheken.

sgcSign

Enterprise-Digitalsignaturen. XAdES, PAdES, CAdES und ASiC mit 10 Schlüsselanbietern und 21 EU-Länderprofilen.

Mehr erfahren →

sgcWebSockets

Enterprise-WebSocket-, HTTP/2-, MQTT-, AMQP- und WebRTC-Komponenten für Delphi, C++ Builder und .NET.

Mehr erfahren →

sgcHTML

Serverseitige HTML- und UI-Komponenten für Delphi und C++ Builder, aufbauend auf Bootstrap und htmx.

Mehr erfahren →

sgcCrypto

Moderne Kryptografie in reinem Object Pascal: AES-GCM, SHA-3, Ed25519, X.509 und Post-Quanten-ML-KEM und ML-DSA.

Mehr erfahren →
3,000+Entwickler
20+Jahre
761+Komponenten
30+API-Integrationen
5Plattformen
30 Tage Geld-zurück-GarantieNicht zufrieden? Fordere innerhalb von 30 Tagen nach dem Kauf eine vollständige Rückerstattung an. Rückerstattungsrichtlinie ansehen

PDF ohne DLL

Erstellen, anzeigen, signieren und archivieren Sie PDF-Dateien mit dem Delphi- oder C++Builder-Code, den Sie bereits haben.