FEATURED · sgcPDF

The whole PDF lifecycle for Delphi, with no DLL to deploy

Create, edit, view, render, extract, encrypt, sign, redact and validate PDF files with components written entirely in Object Pascal. The parser, writer, fonts, image decoders, renderers and cryptography are compiled into your application, so there is no external PDF engine to ship. PDF 1.0 to 2.0, read and write, from Delphi 7 through 13 and C++ Builder.

  • 15 palette components
  • Create · Edit · View · Extract · Sign · Redact
  • Zero external dependencies
  • Delphi 7 to 13 · C++ Builder

Fifteen Components, No DLL to Deploy

sgcPDF does not wrap PDFium, Ghostscript, a COM server or any other native library. Parsing, writing, font embedding and subsetting, image decoding, rendering, encryption and signing are implemented in the sgcPDF_*.pas units, so your executable is the whole deployment.

15 Palette components Document, editor, viewers, extractors and signing. Every one is also usable without a form, from console applications and services.
0 DLLs to deploy No DLL, no external PDF engine and no OpenSSL. Parser, renderer, fonts and crypto are in Pascal.
5 Operating systems Windows, Linux, macOS, iOS and Android. The core units have no VCL or FMX dependency.
6 PDF/A conformance levels PDF/A-1, 2 and 3, levels a and b, plus PDF/UA-1 checks.
100% Source code included Full source code comes with every license, so every step of a render or a signature is yours to read.
sgcPDF

A pure Pascal PDF library for Delphi and C++ Builder, licensed on its own, starting at €249 for a single developer. Every license includes full source code, 1 year of updates and a 70% renewal discount.

One Library for the Whole PDF Lifecycle

From the first page you write to the signed, archived and redacted file you hand over, every step runs in the same Object Pascal code base.

Create

Documents from Code, HTML or a Canvas

Pages, text in the 14 standard fonts or embedded and subset TrueType and OpenType fonts, images (JPEG, PNG, BMP, TIFF), lines, curves, gradients, tables that flow across pages, barcodes and QR codes, annotations, bookmarks and optional content layers. TsgcPDFHTMLRenderer turns HTML with CSS into paginated PDF, and TsgcPDFCanvas and EMF playback convert existing drawing code.

View the creation features →
Secure & sign

Encryption, Signatures and True Redaction

RC4 40/128, AES-128 and AES-256 password encryption, certificate encryption, and digital signatures with visible fields and timestamps through TsgcPDFSignatureHandler. TsgcPDFSignatureVerifier checks integrity, byte range coverage and the certificate chain of every signature, and TsgcPDFRedactor removes content instead of covering it, so the removed text cannot be extracted afterwards.

View the security features →
Edit

Change Files You Did Not Write

Watermarks, headers, footers, page numbers and stamps, merge and split, extract, insert, delete, rotate and reorder pages with TsgcPDFEditor. Incremental save appends a new revision to the original file, which keeps earlier signatures valid.

See what it can do →
View & render

VCL and FMX Viewers, Plus a Server Renderer

TsgcPDFViewerControl brings thumbnails, outline, text selection, search, form filling and printing to VCL, TsgcPDFViewerFMX covers Windows, macOS, iOS and Android, and TsgcPDFRendererRaster turns pages into PNG on Windows and Linux servers with no GDI.

The rendering surface →
Extract

Text, Positions and Images

Plain text per page or for the whole document, fragments with coordinates, font and size from TsgcPDFTextExtractor, and page images decoded to PNG, JPEG or BMP by TsgcPDFImageExtractor. Decoders cover Flate, LZW, JPEG 2000, CCITT G3/G4 and JBIG2.

The extraction units →
Comply

PDF/A, PDF/UA, Tagged PDF, Factur-X

PDF/A-1, PDF/A-2 and PDF/A-3 output in levels a and b with the built in TsgcPDFAValidator, tagged PDF with a structure tree and alternate text, PDF/UA-1 checks, and Factur-X, ZUGFeRD and XRechnung e-invoice embedding.

Archiving and accessibility →

Reference pages for each area:

A Few Lines of Delphi

Coordinates are in PDF points (1/72 inch) with the origin at the bottom left corner of the page. Every class and method below is part of the sgcPDF_*.pas units.

var
  oPDF: TsgcPDFDocument;
  oPage: TsgcPDFPage;
begin
  oPDF := TsgcPDFDocument.Create;
  try
    oPDF.Info.Title := 'Hello sgcPDF';
    // A4 portrait: 595 x 842 points
    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);
    // user password opens the file, owner password grants full rights
    oPDF.SetEncryption(emAES_256, 'user123', 'owner456');
    oPDF.SaveToFile('hello.pdf');
  finally
    oPDF.Free;
  end;
end;
var
  oSigner: TsgcPDFSignatureHandler;
begin
  oSigner := TsgcPDFSignatureHandler.Create;
  try
    oSigner.LoadCertificateFromPFX('signer.pfx', 'test123');
    oSigner.Reason := 'Document approval';
    oSigner.Location := 'Barcelona';
    oSigner.HashAlgorithm := shaSHA256;
    // visible signature field on page 1: Left, Bottom, Right, Top
    oSigner.SetField('Signature1', 0, 50, 50, 250, 100);
    oSigner.SignDocument('contract.pdf', 'contract-signed.pdf');
  finally
    oSigner.Free;
  end;
end;
var
  oPDF: TsgcPDFDocument;
  oRenderer: TsgcPDFRendererRaster;
  oPage: TsgcPDFPage;
begin
  oPDF := TsgcPDFDocument.Create;
  try
    oPDF.LoadFromFile('report.pdf');
    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 * 150 / 72), Round(oPage.Height * 150 / 72),
        'page1.png');
    finally
      oRenderer.Free;
    end;
  finally
    oPDF.Free;
  end;
end;

More samples, including HTML to PDF, PAdES and redaction. The full feature matrix →

Three Things Worth Knowing First

What you deploy, which parts run where, and how advanced signatures fit in. All three answers are short, and all three are on this page rather than in the small print.

15 components on the sgcPDF palette
component                 platforms
TsgcPDFDocument           VCL, FMX, console, service
TsgcPDFEditor             VCL, FMX, console, service
TsgcPDFTextExtractor      All platforms
TsgcPDFImageExtractor     All platforms
TsgcPDFHTMLRenderer       All platforms
TsgcPDFOptimizer          All platforms
TsgcPDFSignatureHandler   All platforms
TsgcPDFSignatureVerifier  All platforms
TsgcPDFRedactor           All platforms
TsgcPDFViewerFMX          Windows, macOS, iOS, Android
TsgcPDFViewerControl      VCL (Windows)
TsgcPDFThumbnailView      VCL (Windows)
TsgcPDFOutlineView        VCL (Windows)
TsgcPDFViewer             Windows
TsgcPDFExporter           Windows

Nothing to install on the target machine

The executable is the whole deployment. The core units have no VCL or FMX dependency, so the same code runs in a console tool, a Windows service, a Linux daemon or a web server.

Which parts run where

Creation, editing, text and image extraction, forms, encryption, signatures, redaction, PDF/A and the raster renderer compile for Windows and Linux64, and for macOS, iOS and Android. The GDI renderer, the exporter and the VCL viewer controls are Windows only, and TsgcPDFViewerFMX covers Windows, macOS, iOS and Android.

PAdES through sgcSign, basic signing built in

sgcPDF signs and verifies PDF files on its own with a PFX certificate. For PAdES baseline levels B-B, B-T, B-LT and B-LTA, and for keys held in smart cards, the Windows certificate store or cloud HSMs, the optional TsgcPDFPAdESSigner bridge uses the key providers of sgcSign, which is licensed separately.

Delphi and C++ Builder

Runtime and design time packages for Delphi 7 through 13, and for C++ Builder 2007 to 13 with generated headers. Trial downloads are not open yet, so request a trial and you will receive the installer for your IDE version.

PDF 1.0 to 2.0 PDF/A-1, 2, 3 PDF/UA-1 PAdES B-B to B-LTA Full source

Every component and unit →

sgcPDF implements the parser, the writer, the fonts, the image decoders, the renderers and the cryptography itself rather than wrapping a native PDF engine, so there is nothing to version-match and nothing in between is a black box.

Fifteen Libraries, One Toolbox

sgcPDF is one of fifteen eSeGeCe component libraries for Delphi, C++ Builder and .NET. They share conventions and they ship with full source. sgcPDF is licensed on its own, outside the All-Access bundle.

sgcCrypto

AEAD encryption, hashing and KDFs, signatures, X.509 and post-quantum cryptography in 43 pure Object Pascal units. Included from sgcWebSockets Standard up, or standalone.

Learn more →

sgcREST

REST server, OpenAPI server and OpenAPI client components for Delphi and C++ Builder. Standalone, with the sgcWebSockets Core runtime bundled in.

Learn more →

sgcHTTP

HTTP/2 client, gRPC client and Google Cloud Pub/Sub, Calendar and FCM clients for Delphi and C++ Builder. Standalone, with the sgcWebSockets Core runtime bundled in.

Learn more →

sgcAuth

OAuth2 client, JWT client and WebAuthn support for Delphi and C++ Builder. Standalone, with the sgcWebSockets Core runtime bundled in.

Learn more →

sgcWebSockets

WebSocket, HTTP/2, MQTT, AMQP, WebRTC, AI and 30+ API integrations for Delphi, C++ Builder, Lazarus and .NET. Its Enterprise edition includes gRPC too.

Learn more →

sgcMQ

MQTT, AMQP 0.9.1 and 1.0, Apache Kafka and STOMP client components for Delphi and C++ Builder. Standalone, with the sgcWebSockets Core runtime bundled in.

Learn more →

sgcSocial

Telegram and WhatsApp Business client components for Delphi and C++ Builder. Standalone, with the sgcWebSockets Core runtime bundled in.

Learn more →

sgcHTML

Server-side HTML and UI components on Bootstrap 5 and htmx for Delphi, C++ Builder and .NET.

Learn more →

sgcQUIC

Raw QUIC transport and an HTTP/3 client and server, with WebTransport. An add-on to sgcWebSockets Enterprise.

Learn more →

sgcAI

AI, LLM and MCP components for Delphi and C++ Builder. Seven LLM providers behind one component, plus MCP, embeddings and speech. Standalone, with the sgcWebSockets Core runtime bundled in.

Learn more →

sgcOpenAPI

OpenAPI 3.x parser, native Pascal SDK generator, OpenAPI server component, and 1,195+ pre-built cloud SDKs.

Learn more →

sgcSign

XAdES, PAdES, CAdES and ASiC for documents, Authenticode, ClickOnce, NuGet and VSIX for code.

Learn more →

sgcPDF

Create, edit, view, sign, redact and validate PDF files in pure Object Pascal, with no DLL to deploy. Licensed on its own.

Learn more →

sgcBiometrics

Windows Hello, fingerprint sensors and the Windows Biometric Framework for Delphi and C++ Builder.

Learn more →

sgcIndy

Updated Indy TCP/IP components with modern TLS, IPv6 and HTTP/2 for Delphi 7 through 13.

Learn more →

Buy Single License €249 Team €399 Site €649

Full pricing details or request a trial.

What Developers Say

Trusted by Delphi, C++ Builder, Lazarus and .NET developers around the world.

Your sgcWebSockets library is very useful and easy to setup. Keep up the good work!

Simone Moretti Delphi Developer

sgcWebSockets is amazing and your support is the best!

Christian Meyer Founder & CTO

Thanks so much for your help and support, I love your components.

Mark Steinfeld CTO

Latest from the blog

View all posts →

You are seeing the PDF view of eSeGeCe.

Show me another angle →
30-Day Money-Back GuaranteeNot satisfied? Request a full refund within 30 days of purchase. See refund policy

PDF Without the DLL

Create, view, sign and archive PDF files from the Delphi and C++ Builder code you already have.