Rivoli PDF / C# PDF library

A C# PDF library you can read in one screen

Five lines from using statement to finished PDF. Rivoli PDF gives C# developers a fluent, strongly typed document model that serializes to JSON, tracks changes, and renders the same bytes on every platform.

Install and generate

No system libraries, no headless browser, no per-platform setup. Rivoli.Pdf 0.1.0 targets .NET 8 and .NET 10.

Terminal
dotnet add package Rivoli.Pdf
Program.cs
using Rivoli.Pdf;
using Rivoli.Pdf.Builders;

var doc = Document.Create("Invoice INV-2026-0420", "Northwind Studios");
doc.AddSection()
    .H1("Invoice INV-2026-0420")
    .AddTable(t => t
        .Header("Description", "Qty", "Amount")
        .Row("Senior engineering consulting", "42", "$7,770.00")
        .Row("Cloud infrastructure setup", "1", "$2,400.00"));
doc.SavePdf("invoice.pdf");

Fluent helpers for the common path, a full document object model when you need control, and a low-level writer underneath. Mix all three freely.

The output

Real output from the runnable samples in the Rivoli PDF repository.

Invoice PDF generated by Rivoli PDF: company header, line-item table with computed totals, payment terms
Generated by the invoice showcase sample in the Rivoli PDF repository. One managed library, no native dependencies.

How we compare

How the C# PDF options stack up.

Capability Rivoli PDF IronPDF Aspose.PDF Syncfusion iText QuestPDF PDFsharp Apryse
Free for small companies Conditional AGPL only
Entry price (per developer) $299 $999 ~$1,679 ~$2,495/yr Quote ~$999/yr Free $150K+/yr
Royalty-free redistribution included Add-on Add-on Quote
Fully managed (no native deps)
Deterministic output
PDF/A-first
JSON document model + change tracking
Round-trip fidelity harness
Cross-language roadmap 5 planned Multi Multi Multi Java/.NET Multi

Competitor prices are researched approximations (June 2026); several vendors are now quote-gated, so some figures are historical or third-party. Rivoli PDF is pre-1.0: document creation is feature-complete, while full parsing of arbitrary PDFs and rasterized rendering are partial and on the near-term roadmap.

Pricing

Free for individuals and for organisations under US$1M in annual gross revenue. One perpetual per-developer license for everyone else.

Free
$0 forever

Full library, no watermark, no page limits. For individuals and organisations under US$1M in annual gross revenue.

Founder license
$299 per developer · perpetual

Buy once, use forever. Royalty-free redistribution included, and the early-access rate locks in for life.

Full details on the product page and in the license terms.

Adopting Rivoli PDF

Whether you're on iText, PDFsharp, or hand-rolled HTML pipelines, the path in is short.

  1. 01 Add the package: dotnet add package Rivoli.Pdf (the document model ships in Rivoli.Pdf.Core, pulled in automatically).
  2. 02 Describe documents as a tree of sections, paragraphs, and tables instead of pages and coordinates; the layout engine places content for A4 or Letter without changes.
  3. 03 Move save-time concerns (encryption, PDF/A, tagging) to PdfSaveOptions on PdfDocumentRenderer.
  4. 04 Add a determinism check to CI: render twice, compare hashes. It catches template regressions for free.
  5. 05 Before migrating reading-heavy workflows (filling existing forms, rendering pages to images), check current support in the docs gallery: Rivoli PDF is pre-1.0 and strongest at authoring.

The full migration guide, with concept mappings and before/after code, lives in the documentation.

Start free. Pay only when you're big.

Install the package today. When your company crosses the US$1M line, the Founder rate locks in for life.