esegece.sgcPDF.Community 2026.10.0

dotnet add package esegece.sgcPDF.Community --version 2026.10.0
                    
NuGet\Install-Package esegece.sgcPDF.Community -Version 2026.10.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="esegece.sgcPDF.Community" Version="2026.10.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="esegece.sgcPDF.Community" Version="2026.10.0" />
                    
Directory.Packages.props
<PackageReference Include="esegece.sgcPDF.Community" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add esegece.sgcPDF.Community --version 2026.10.0
                    
#r "nuget: esegece.sgcPDF.Community, 2026.10.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package esegece.sgcPDF.Community@2026.10.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=esegece.sgcPDF.Community&version=2026.10.0
                    
Install as a Cake Addin
#tool nuget:?package=esegece.sgcPDF.Community&version=2026.10.0
                    
Install as a Cake Tool

sgcPDF .NET

sgcPDF is a PDF library for .NET by eSeGeCe. It creates, parses, edits, renders, signs, encrypts and optimizes PDF documents, fills and flattens forms, extracts text and images, and writes PDF/A and tagged PDF. It is a fully managed port of the sgcPDF Delphi library, one C# file per Delphi unit, with the same class names (TsgcPDFDocument, TsgcPDFPage, TsgcPDFEditor and so on).

Packages

Package Contents Target frameworks
esegece.sgcPDF The library: document model, parser, writer, editor, renderer core, fonts, images, forms, signatures, encryption, text and image extraction, PDF/A. netstandard2.0, net472, net6.0, net8.0, net9.0, net10.0
esegece.sgcPDF.WinForms Windows Forms add-on: GDI renderer and canvas, EMF playback, page export to images, the TsgcPDFViewerControl, TsgcPDFThumbnailView and TsgcPDFOutlineView controls, and the TsgcPDFBarcodeControl barcode and QR control. net472, net8.0-windows
esegece.sgcPDF.Wpf WPF add-on: TsgcWpfPDFViewer, TsgcWpfPDFThumbnailView and TsgcWpfPDFOutlineView, drawn from the platform neutral raster renderer. XAML namespace https://www.esegece.com/sgcui, prefix sgc. net472, net8.0-windows, net9.0-windows, net10.0-windows
esegece.sgcPDF.Avalonia Avalonia add-on: TsgcAvaloniaPDFViewer, TsgcAvaloniaPDFThumbnailView and TsgcAvaloniaPDFOutlineView for Windows, Linux and macOS, with pinch zoom. Same XAML namespace and prefix. On Linux and macOS install TrueType fonts (for example fonts-liberation) or call sgcPDFRasterAddFontDirectory. net8.0, net9.0, net10.0
esegece.sgcPDF.sgcSign Optional bridge to sgcSign .NET: TsgcPDFPAdESSigner signs to PAdES B-B, B-T, B-LT and B-LTA with any sgcSign key provider. Depends on esegece.sgcSign. netstandard2.0, net472, net6.0, net8.0, net9.0, net10.0

Each package also ships as a free Community edition with the .Community suffix (esegece.sgcPDF.Community, esegece.sgcPDF.WinForms.Community, esegece.sgcPDF.Wpf.Community, esegece.sgcPDF.Avalonia.Community, esegece.sgcPDF.sgcSign.Community), see Editions.

netstandard2.0 reaches .NET Framework 4.6.2 and later, Mono and Xamarin. The only third party dependencies are System.Security.Cryptography.Pkcs (CMS for signatures and certificate encryption) and, on netstandard2.0 and net472, System.Memory.

Install

dotnet add package esegece.sgcPDF
dotnet add package esegece.sgcPDF.WinForms
dotnet add package esegece.sgcPDF.sgcSign

Only the first one is required. Add the WinForms package for on screen rendering and the viewer controls, and the sgcSign package for PAdES signatures through sgcSign. For the free Community edition use the same ids with the .Community suffix, for example dotnet add package esegece.sgcPDF.Community.

Features

  • Create documents: text with the 14 standard fonts or embedded TrueType, CFF and CJK fonts (subset, Unicode), lines, shapes, gradients, transparency, images (JPEG, PNG, BMP, TIFF), tables, 1D and 2D barcodes (QR Code, DataMatrix, EAN, UPC and more), bookmarks, links, annotations and layers.
  • Parse and edit existing files: classic and stream cross reference tables, incremental updates, merge, split, extract and rotate pages, watermarks, page numbers, true redaction, optimizer.
  • Forms: create AcroForm fields, fill, flatten, import and export the form data.
  • Security: RC4 40/128, AES-128 and AES-256 password encryption, and public key (certificate) encryption, both ways.
  • Signatures: sign with a certificate (PFX or Windows store), verify signatures and the certificate chain, and PAdES B-B to B-LTA through the sgcSign bridge.
  • Standards: PDF/A-1b, 2b and 3b, tagged PDF (PDF/UA-1, PDF/A-2a), embedded files and Factur-X / ZUGFeRD attachments.
  • Extraction: text per page with search, and images to files or streams.
  • Rendering: platform independent renderer core with all image types and colour spaces (JPEG, JPEG 2000, CCITT, JBIG2), shadings, patterns, soft masks, blend modes, optional content, annotation appearances and embedded fonts. TsgcPDFRendererRaster renders pages to PNG or BMP on any platform, and the WinForms package adds the GDI backend and the viewer controls.
  • HTML to PDF: TsgcPDFHTMLRenderer lays out an HTML string or file on PDF pages.

Quick start

Create a PDF, save it, then load it again and extract its text:

using System;
using esegece.sgcPDF;

class Program
{
    static void Main()
    {
        // Create a one page A4 document and save it
        using (TsgcPDFDocument oDoc = new TsgcPDFDocument())
        {
            TsgcPDFPage oPage = oDoc.AddPage(595, 842);
            oPage.DrawText("Hello from sgcPDF", 50, 780, TsgcPDFStandardFont.sfHelveticaBold, 24);
            oPage.DrawLine(50, 770, 545, 770, 1.0);
            oPage.DrawText("Created with sgcPDF .NET.", 50, 740, TsgcPDFStandardFont.sfHelvetica, 12);
            oDoc.SaveToFile("hello.pdf");
        }

        // Load it again and extract the text of every page
        using (TsgcPDFDocument oDoc = new TsgcPDFDocument())
        {
            oDoc.LoadFromFile("hello.pdf");
            for (int i = 0; i < oDoc.PageCount(); i++)
                Console.WriteLine(oDoc.ExtractTextW(i));
        }
    }
}

Output:

Hello from sgcPDF
Created with sgcPDF .NET.

Show a PDF in a Windows Forms application

With esegece.sgcPDF.WinForms:

TsgcPDFViewerControl oViewer = new TsgcPDFViewerControl();
oViewer.Parent = this;
oViewer.Dock = DockStyle.Fill;
oViewer.LoadFromFile("hello.pdf");

The control supports zoom, text selection, search, form filling, links, layers and printing. TsgcPDFThumbnailView and TsgcPDFOutlineView add a page strip and a bookmark tree.

Sign to PAdES with sgcSign

With esegece.sgcPDF.sgcSign (namespaces esegece.sgcPDF and esegece.sgcSign):

TsgcPFXKeyProvider oKey = new TsgcPFXKeyProvider();
oKey.LoadFromFile("certificate.pfx", "password");

TsgcPDFPAdESSigner oSigner = new TsgcPDFPAdESSigner();
oSigner.KeyProvider = oKey;
oSigner.Level = TsgcPDFPAdESLevel.paBT;
oSigner.TSAURL = "http://timestamp.digicert.com";
oSigner.SignPDFFile("hello.pdf", "hello-signed.pdf");

Any sgcSign key provider works in place of the PFX one, for example PEM, CSC remote signing, AWS KMS, Google Cloud KMS or HashiCorp Vault. Plain CMS signatures without sgcSign are available in the core package through TsgcPDFSignatureHandler and TsgcPDFSignatureVerifier.

Demos

The demos folder holds 26 Windows Forms demos targeting net8.0-windows, each a mirror of the Delphi demo with the same name:

Demo Shows
PDFCreator A one page A4 document with a title, a line, body text and a border
PDFAnnotations Sticky note, link, free text, highlight, stamp and other annotations
PDFAttachments Add, list, extract and delete embedded files, and a Factur-X invoice
PDFBarcodeControl TsgcPDFBarcodeControl for every symbology, saved as PNG, SVG and PDF (Delphi demo PDFBarcodeControls)
PDFBarcodes2D QR Code, DataMatrix and the other 2D barcodes
PDFBookmarks A nested bookmark (outline) tree
PDFCanvas Drawing with the GDI like TsgcPDFCanvas, EMF to vector PDF
PDFCertEncryption Encryption for one or more recipient certificates
PDFEditor Watermark, page numbers and page extraction on an existing PDF
PDFEncryption Password protection with RC4-128, AES-128 or AES-256
PDFFormData Fill an AcroForm, then export and import its data
PDFForms Create an AcroForm with text fields, combo box, check box and button
PDFImageExtract List the images of a PDF and save them
PDFImages JPEG, PNG and BMP images scaled to fit the page
PDFIncremental Changes saved as an incremental update
PDFLayers Optional content groups (layers)
PDFPDFA PDF/A-1b, 2b or 3b with an embedded TrueType font
PDFRedaction True redaction of text and areas
PDFSignature Sign with a Windows store certificate and verify signatures
PDFSignaturePAdES CAdES / PKCS#7 signatures from a PFX or an external signer
PDFTagged Tagged PDF (PDF/UA-1, PDF/A-2a)
PDFTextExtract Text extraction and search
PDFTextOutlines Convert all the text to vector outlines
PDFTransparency Gradients and transparency
PDFUnicode Unicode text with embedded TrueType fonts
PDFViewer Render the current page with the GDI renderer
PDFViewerControl TsgcPDFViewerControl with thumbnails and bookmarks

Inside the source tree the demos reference the library projects. In a demos only bundle, where ..\source does not exist, demos\Directory.Build.props and demos\Directory.Build.targets switch them to the sgcPDF NuGet packages. Pass -p:SgcPDFUseProject=false to force the package mode. The Community and Registered package choice is switched in one place, demos\Directory.Build.props (SgcPDFCommunity, Community by default).

Build from source

dotnet build sgcPDF.sln -c Release
build\pack.bat

build\pack.bat packs the three packages (with symbol packages) into nupkg in both editions, the Community ones with -p:SgcCommunity=true, and build\release.bat also bundles the demos and the sources into dist. Building the net472 targets needs the .NET Framework 4.7.2 targeting pack. The sgcSign bridge project expects the sgcSign .NET sources next to this tree.

Documentation

Product page, documentation and release notes: https://www.esegece.com

Editions

All editions ship the same feature set. They differ in licensing, not capability.

  • Community (esegece.sgcPDF.Community, esegece.sgcPDF.WinForms.Community, esegece.sgcPDF.sgcSign.Community) is free for both commercial and non-commercial use by small teams: individuals and organizations under EUR 1M annual gross revenue and with no more than 5 developers. It shows a brief, non-blocking one-time startup notice. Organizations at or above either threshold need a paid licence. The Community sgcSign bridge depends on esegece.sgcSign.Community.
  • Registered (esegece.sgcPDF, esegece.sgcPDF.WinForms, esegece.sgcPDF.sgcSign) removes the notice and carries the commercial licence.

Only one of the two editions should be referenced at a time.

Licence

sgcPDF is commercial software. The Registered packages ship under the licence in LICENSE.txt, and you must accept it to install them. The Community packages ship under LICENSE-Community.txt. See https://www.esegece.com for the licence options.

copyright (c) 2026 eSeGeCe

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 is compatible.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on esegece.sgcPDF.Community:

Package Downloads
esegece.sgcPDF.Avalonia.Community

Avalonia add-on for sgcPDF .NET: the TsgcAvaloniaPDFViewer control with zoom, views, search, text selection, links, layers and pinch zoom, and the TsgcAvaloniaPDFThumbnailView and TsgcAvaloniaPDFOutlineView side views, on Windows, Linux and macOS. https://www.esegece.com

esegece.sgcReports.Community

Headless, platform-neutral report engine for .NET: bands, expressions, data sources, layout and pagination, PDF/PDF-UA-1/PDF-A-3 export, XLSX, CSV and PNG export. Port of the sgcReports Delphi library, built on sgcPDF.

esegece.sgcPDF.sgcSign.Community

Optional bridge between sgcPDF .NET and sgcSign .NET: TsgcPDFPAdESSigner signs PDF documents to PAdES B-B, B-T, B-LT and B-LTA with any sgcSign key provider (PFX, PEM, CSC remote signing, AWS KMS, Google Cloud KMS, HashiCorp Vault), timestamp authority and OCSP client. https://www.esegece.com

esegece.sgcPDF.WinForms.Community

Windows Forms add-on for sgcPDF .NET: GDI renderer and canvas, EMF playback, page export to images, the TsgcPDFViewerControl, TsgcPDFThumbnailView, TsgcPDFOutlineView and TsgcPDFCommentsView controls with zoom, search, text selection, form filling, links and layers, and the TsgcPDFBarcodeControl barcode and QR control. https://www.esegece.com

esegece.sgcPDF.Wpf.Community

WPF add-on for sgcPDF .NET: the TsgcWpfPDFViewer control with zoom, views, search, text selection, links and layers, and the TsgcWpfPDFThumbnailView and TsgcWpfPDFOutlineView side views, drawn from the platform neutral sgcPDF raster renderer. https://www.esegece.com

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2026.10.0 33 10/15/2026