compare

PDFsharp vs. Nutrient

A feature-by-feature comparison of Nutrient and PDFsharp (with MigraDoc) for .NET. PDFsharp is a free, MIT-licensed C# library that’s genuinely good at code-first PDF generation. Nutrient covers everything it deliberately leaves out — viewing, text extraction, OCR, HTML and Office conversion, robust forms, signature validation, and compliance. We show where each one fits.


At a glance

Nutrient
PDFsharp
Product scope
Platform
Full document platform: embeddable viewers (WinForms, WPF, web), server SDKs, native mobile, Document Engine, and a cloud API.
Library
A free .NET library for generating and modifying PDFs (with MigraDoc for report layout). By design, not a document platform.
Rendering and viewing
Built in
Render pages to images and embed interactive viewers in WinForms, WPF, and the browser.
Not available
Cannot render a PDF page to an image and ships no viewer — teams bolt on PDFium or Ghostscript.
Data extraction and OCR
Built in
Extracts text, tables, key-value pairs, MRZ, and optical marks, with a VLM-OCR vision API and AI/ML OCR in 100+ languages for scanned pages.
Not available
empira’s own FAQ: “PDFsharp does not have APIs for text extractions.” No OCR.
HTML and Office conversion
Built in
HTML to PDF through a Chrome headless shell, plus Word, Excel, and PowerPoint to PDF with no MS Office installed.
Not available
No HTML to PDF (“we do not plan to write such a converter”) and no Office conversion.

Used by Lufthansa, Disney, Autodesk, UBS, Dropbox, IBM
Lufthansa
Disney
Autodesk
UBS
Dropbox
IBM

PDFsharp generates PDFs. Nutrient runs the whole workflow.

PDFsharp is a respected, actively maintained .NET library — free, MIT-licensed, and good at exactly what it targets: drawing PDFs in code and laying out reports with MigraDoc. The wall comes later, when your product needs to display documents, extract their data, fill forms reliably, validate signatures, or meet PDF/A and accessibility requirements. Those aren’t bugs in PDFsharp; they’re outside its scope. They’re Nutrient’s core.

Steve Cangiano
Director of Product Management
“We found the tool set to be very deep, and it allowed us to take total control of the data moving between our application and Nutrient. The quality of the product is extremely high, and we know it will handle just about anything we throw at it.”
CMIC

Feature comparison

Generation, manipulation, viewing, extraction, conversion, forms, signatures, and compliance — compared point by point. PDFsharp limitations are taken from empira’s own documentation and GitHub issues.

Nutrient
PDFsharp
Winner
Code-first PDF generation
Generate from HTML, Word templates, and images, plus programmatic creation APIs.
Its core strength — coordinate-level drawing (XGraphics) plus the MigraDoc document model for reports and invoices.
Draw
Merge, split, and page operations
Merge, split, reorder, watermark, and stamp across the SDK and Document Engine.
Solid merge/split and page import support.
Draw
Rendering and embeddable viewer
Render pages to images and embed interactive viewers — WinForms and WPF controls, plus a WebAssembly web viewer and native mobile.
Cannot rasterize a page or display a PDF; requires bolting on PDFium, SkiaSharp, or Ghostscript.
Nutrient
Text extraction
Extract text with reading order preserved, from both born-digital and scanned pages.
No extraction API (per empira’s FAQ); developers hand-parse content streams or add third-party libraries.
Nutrient
Data extraction and vision API (.NET)
Extracts key-value pairs, tables and form data, invoices, bank statements, MRZ, MICR, and optical marks (OMR) with AI, ML, and adaptive layout understanding. The .NET Vision API adds VLM-OCR content extraction (handwriting detection, Markdown export) and LLM document classification.
None — PDFsharp generates and edits PDFs; it has no data extraction or document intelligence.
Nutrient
OCR
Built in — AI/ML-powered, zonal OCR, preprocessing, searchable PDF/A output, 100+ languages.
Not available.
Nutrient
Image document technology (.NET)
100+ formats, including DICOM, HEIC, PSD, and RAW camera images; image cleanup and processing; barcode reading and generation; and TWAIN/WIA scanner capture.
PDF-only — no image-format breadth, barcode support, or scanner capture.
Nutrient
HTML to PDF
Converts HTML to PDF through a Chrome headless shell — modern CSS, Flexbox, Grid, and web fonts come through with full fidelity.
Not supported; empira’s FAQ says a converter isn’t planned. The third-party HtmlRenderer shim handles only simple, older HTML/CSS.
Nutrient
Office to PDF
Word, Excel, and PowerPoint to PDF with no MS Office installation.
Not supported.
Nutrient
Forms (AcroForm)
Create, fill, read, and flatten AcroForms programmatically, plus a drag-and-drop form designer in the viewer.
“Limited support for AcroForms” (empira); full form tooling is sold separately as a paid PsX module.
Nutrient
Digital signatures
Create and validate — PAdES, timestamps, long-term validation, and HSM integration.
Signing (create-only) arrived in 6.2; no documented way to validate existing signatures.
Nutrient
Redaction
Pattern, regex, and search-based redaction with true content removal — plus AI redaction.
Not available.
Nutrient
PDF/A and PDF/UA
PDF/A-1 through A-4 conversion and validation, plus automatic PDF/UA accessibility tagging.
PDF/A marked “under construction… very early state” by empira — new documents only, no conversion or validation. PDF/UA requires hand-building the structure tree.
Nutrient
Linux, Docker, and macOS deployment
Consistent rendering and fonts across Windows, Linux (x64/arm64), and macOS out of the box.
The Core build throws unless you hand-write a font resolver; empira’s documentation notes the fallback “never works on macOS.” A top source of Docker deployment failures.
Nutrient
Jeanette Thomas
CTO
“We don’t think any other tools have the breadth and the ease of use that Nutrient has. We certainly have evaluated other companies over the years. And every time we do that, we’ve come back to Nutrient.”
GOVENDA

Where PDFsharp wins

If your needs stop at programmatic generation of simple documents, PDFsharp is an honest, capable choice — and we won’t pretend otherwise.

Nutrient
PDFsharp
Winner
Free, MIT-licensed
Commercial, component-based annual subscription.
Genuinely free for closed-source commercial use, with no royalties and no copyleft.
PDFsharp
Lightweight footprint
A full platform — heavier than a single-purpose generation library.
Small, with no native dependencies in the Core build — a good fit for serverless functions.
PDFsharp
Code-first report layout (MigraDoc)
Generates reports from HTML and Word templates rather than a dedicated code-first document model.
MigraDoc’s paragraph/table document model with automatic pagination is purpose-built for data-driven invoices and reports.
PDFsharp
Battle-tested install base
Trusted by thousands of companies, but a commercial product, not a community staple.
Maintained since 2005 with 58M+ NuGet downloads — stable and widely understood.
PDFsharp

What free actually costs

We respect MIT-licensed tools — PDFsharp’s license is real and generous. But teams that outgrow it end up writing custom font resolvers, gluing in extraction libraries, shelling out to a browser for HTML, and buying empira’s paid PsX modules for forms or e-invoicing — while support remains a community forum, plus incident-capped paid tiers. At that point, the free library is quietly costing senior engineering time. Nutrient consolidates the whole workflow behind one SDK with SLA-backed support.

Nutrient
PDFsharp
License
Commercial — component-based annual subscription; license only what you deploy.
MIT, free — including closed-source commercial use.
Paid add-ons
Forms, extraction, conversion, and compliance are part of the platform.
Full forms, Factur-X/ZUGFeRD e-invoicing, text extraction, and Markdown-to-PDF are sold by empira as separately licensed paid PsX modules.
Support
SLA-backed enterprise support; SOC 2 Type 2 audited.
Community forum and GitHub Discussions; paid tiers are incident-capped per year.
Hidden engineering cost
One SDK covers viewing, extraction, OCR, conversion, forms, and compliance.
Font resolvers, extraction shims, HTML workarounds, and rendering bolt-ons are all yours to build and maintain.

PDFsharp licensing and support details reflect publicly available information from empira’s website and documentation believed accurate as of June 2026, are provided in good faith for general informational purposes only, and may change. Nutrient makes no representation or warranty as to their accuracy.

Standards compliance you can verify

PDF/A and PDF/UA output validated with the open source veraPDF validator across a 3,157-file corpus. These are Nutrient’s own measured results, March–April 2026. PDFsharp can’t convert or validate PDF/A at all, so there’s no head-to-head to run.

Nutrient compliance output
Nutrient
PDF/A — veraPDF pass rate
97.2 percent across 3,157 files
PDF/A — critical failures
0
PDF/UA — veraPDF pass rate
96.5 percent across 3,157 files
PDF/UA — critical failures
0
PDF/A versions supported
PDF/A-1, PDF/A-2, PDF/A-3, PDF/A-4

Why teams choose Nutrient

The capabilities PDFsharp leaves out

Viewer, text and data extraction (Vision API), OCR, image document technology, HTML and Office conversion, robust forms, signature validation, redaction, and compliance — in one .NET SDK on NuGet.


Deterministic, trustworthy output

Structured data extraction with confidence scores you can validate and trace. Built for high-stakes, regulated document work.


Interfaces for humans in the loop

Viewing, annotation, forms, signing, and review across desktop (WinForms/WPF), web, and native iOS and Android.


AI-native and agent-ready

Generative AI for chat, redaction, comparison, and extraction — with any LLM, including local models.


A vendor behind the SDK

SLA-backed enterprise support and SOC 2 Type 2 audited — instead of a community forum and incident-capped tickets.

Frequently asked questions

What is the best PDFsharp alternative?

It depends on what you’ve outgrown. If PDFsharp (sometimes written “PDF sharp”) covers your generation needs, keep it — it’s free and solid. Teams switch to Nutrient when the product needs what PDFsharp deliberately omits: an embeddable viewer, text extraction and OCR, HTML and Office conversion, reliable AcroForm filling, signature validation, redaction, or PDF/A and PDF/UA compliance. Nutrient .NET SDK covers all of that in one library, with the same C# and VB.NET reach.

Does PDFsharp have a PDF viewer?

No. PDFsharp can’t render a PDF page to an image, and it ships no viewer control — its documentation points developers to external engines like PDFium or Ghostscript for display. Nutrient includes embeddable interactive viewers for WinForms and WPF desktop apps, a WebAssembly viewer for the browser, and native iOS and Android SDKs — with annotation, form filling, and signing built into the UI.

How do I convert HTML to PDF with PDFsharp?

You can’t with PDFsharp itself — empira’s FAQ states a converter isn’t available and isn’t planned. The commonly suggested third-party “HTML Renderer for PDF using PdfSharp” handles only simple, older HTML/CSS, so modern layouts break. Nutrient converts HTML to PDF through a Chrome headless shell, so Flexbox, Grid, web fonts, and modern CSS come through with full fidelity — from C#, with headers, footers, and watermarks.

Can PDFsharp extract text from a PDF?

No. empira’s own FAQ says “PDFsharp does not have APIs for text extractions.” Developers either hand-parse content streams or bolt on a separate reading library, and reading order isn’t preserved. Nutrient .NET SDK extracts text with reading order preserved and pulls structured data — key-value pairs, tables and form data, invoices, bank statements, MRZ, MICR, and optical marks (OMR) — using AI, ML, and adaptive layout understanding. Its vision API adds VLM-OCR content extraction and LLM document classification, with OCR for scanned documents in 100+ languages.

Does Nutrient work with C# and VB.NET, and is it on NuGet like PDFsharp?

Yes. Nutrient .NET SDK is distributed as NuGet packages — no manual DLL management — and supports C# and VB.NET across .NET Framework, .NET Core, and modern .NET (5–8+), on Windows, Linux, and macOS. If your project already consumes the PDFsharp NuGet package, swapping or adding the Nutrient dependency follows the same workflow.

I’m still on PDFsharp 1.50.5147 — should I upgrade or switch?

PDFsharp 6.x is a significant migration from the legacy 1.50 line: APIs changed (for example, XFontStyle became XFontStyleEx), the Core/GDI/WPF build split matters more, and community forks like PdfSharpCore use different namespaces. If you’re going to absorb a breaking migration anyway, it’s the right moment to ask whether you’ll soon need a viewer, extraction, OCR, conversion, or compliance — if so, migrating once to Nutrient beats migrating twice.

Does PDFsharp work reliably on Linux and Docker?

It can, but the Core build has no default font resolver on Linux or macOS — you must implement IFontResolver yourself or hit runtime exceptions, and empira’s documentation notes the fallback resolver “never works on macOS.” This is one of the most common PDFsharp deployment failures in containers. Nutrient .NET SDK renders consistently across Windows, Linux (x64 and arm64), and macOS without custom font plumbing.

Is Nutrient free or open source like PDFsharp?

No. Nutrient is a commercial SDK with component-based annual licensing, and we won’t pretend free doesn’t matter — if programmatic generation is all you need, PDFsharp’s MIT license is a fair deal. The calculation changes when you’re maintaining font resolvers, extraction shims, and HTML workarounds, or when you’re buying empira’s paid PsX modules for forms and e-invoicing. At that point, a supported commercial SDK is usually cheaper than the engineering time.

Can I migrate from PDFsharp (PdfDocument, PdfReader) to Nutrient?

Yes. The concepts map directly: PDFsharp’s PdfDocument and PdfReader workflows (open, modify, save) translate to Nutrient’s document APIs, and generation moves to HTML- or template-based creation. Most teams migrate when they add viewing, extraction, or compliance — the generation code is typically the easy part. Schedule a call with our solutions engineering team for a scoped migration estimate.


COMPARE

Compare other PDF SDK alternatives

Apryse (PDFTron)

Apryse is a capable viewer-and-server SDK, but Nutrient leads on AI, real-time collaboration, and an open source-based engine — backed by independent benchmarks.

Syncfusion

Nutrient .NET SDK delivers AI-powered PDF intelligence with LLM document classification and 100+ language OCR. Syncfusion excels at Office generation in pure C#.

PDF.js

PDF.js is fine for basic viewing — but once you need annotations, signatures, or forms, it turns into a fragile stack of plugins. Nutrient gives you a complete API.

See it for yourself

Talk to our solutions engineers. Bring your documents, your questions, and your edge cases — we’ll run a side-by-side comparison.