VellumPdf.Reader
2.0.0
dotnet add package VellumPdf.Reader --version 2.0.0
NuGet\Install-Package VellumPdf.Reader -Version 2.0.0
<PackageReference Include="VellumPdf.Reader" Version="2.0.0" />
<PackageVersion Include="VellumPdf.Reader" Version="2.0.0" />
<PackageReference Include="VellumPdf.Reader" />
paket add VellumPdf.Reader --version 2.0.0
#r "nuget: VellumPdf.Reader, 2.0.0"
#:package VellumPdf.Reader@2.0.0
#addin nuget:?package=VellumPdf.Reader&version=2.0.0
#tool nuget:?package=VellumPdf.Reader&version=2.0.0
VellumPdf.Reader
The PDF reader of VellumPdf, a dependency-free PDF library for .NET 10 implemented clean-room from ISO 32000. It opens an existing PDF on a bounds-checked lexer and object parser and exposes its structure. BCL-only, with zero runtime dependencies.
- Classic cross-reference tables, cross-reference and object streams, and hybrid-reference files (unencrypted).
- Exposes the document catalog, digital signatures, and decoded stream data.
- The foundation for the signing long-term-validation path, the
VellumPdf.Conformancevalidator, and a growing general reader.
Preview. The public surface is still settling; encryption and content extraction are on the roadmap (Epic #100). See the roadmap below.
Install
dotnet add package VellumPdf.Reader
Usage
using VellumPdf.Reader;
using var reader = PdfReader.Open(File.OpenRead("input.pdf"));
VellumPdf.Core.PdfDictionary catalog = reader.Catalog; // the document catalog
foreach (var signature in reader.Signatures) // any digital signatures
Console.WriteLine(signature.SubFilter);
Documentation
Architecture and reader scope: https://github.com/Tim81/VellumPDF/blob/main/docs/architecture.md
The VellumPdf family
| Package | Status | Summary |
|---|---|---|
| VellumPdf.Kernel | Stable | Low-level PDF object model, canvas, fonts, images, encryption. |
| VellumPdf.Fonts.Standard14 | Stable | Embeddable standard-14 font substitutes for PDF/A text. |
| VellumPdf.Layout | Stable | High-level document builder: paragraphs, tables, images, pagination. |
| VellumPdf.Signing | Stable | PAdES / PKCS#7 digital signatures with timestamps and LTV. |
| VellumPdf.Reader (this package) | Preview | Opens existing PDFs; exposes catalog, signatures, and streams. |
| VellumPdf.Conformance | Stable | In-process PDF/A and PDF/UA preflight validation. |
| VellumPdf.Cli | Stable | vellum-preflight command-line PDF/A and PDF/UA validator. |
| VellumPdf.Barcodes | Stable | QR, Data Matrix, Aztec, PDF417, Code 128/GS1-128, Code 39, EAN/UPC, and ITF-14 as vectors. |
Roadmap
| Milestone | Scope |
|---|---|
| 2.0 — Breaking changes (this release) | Strong-named assemblies (#53), an async I/O surface for Save/Sign/loaders (#54), and an external-signer API for cloud KMS and remote HSM signing (#165). Each changes assembly identity or the public contract, so they waited for a major version. |
| 2.1 — PDF reader (structural) | VellumPdf.Reader grows classic and cross-reference-stream parsing, object streams, and encryption support, with a fixture corpus proving it against real-world files (Epic #100). |
| 2.2 — PDF content extraction | Text and image extraction on top of the reader. |
| 3.0 — Read-modify-write | A unified round-trip document model that supersedes the write-once PdfDocument, so existing PDFs can be opened, edited, and saved back (Epic #101). |
License
Apache-2.0. Source and issues: https://github.com/Tim81/VellumPDF
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. |
-
net10.0
- VellumPdf.Kernel (>= 2.0.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on VellumPdf.Reader:
| Package | Downloads |
|---|---|
|
VellumPdf.Signing
Optional digital-signature add-on for VellumPdf: PAdES/PKCS#7 detached CMS signatures over VellumPdf.Kernel.PdfDocument and VellumPdf.Layout.Document. References System.Security.Cryptography.Pkcs; keeps the core zero-dependency. |
|
|
VellumPdf.Conformance
In-process PDF/A and PDF/UA preflight validation for VellumPdf: opens a PDF through VellumPdf.Reader and runs a registry of clean-room conformance rules authored from the ISO specifications, returning machine-readable assertions (rule id, ISO clause, severity, object reference). No external veraPDF Docker image required. BCL-only, AOT- and trim-ready; rules are registered explicitly with no reflection. Covers PDF/A-2b/2u/2a and PDF/UA-1, cross-validated against veraPDF in CI on both paths of every rule. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.0.0 | 110 | 8/17/2026 |
| 1.11.0 | 142 | 7/11/2026 |
| 1.10.0 | 892 | 7/7/2026 |
| 1.9.0 | 743 | 7/6/2026 |
| 1.8.2 | 126 | 7/5/2026 |
| 1.8.1 | 135 | 7/3/2026 |
| 1.8.0 | 128 | 7/3/2026 |
| 1.7.8 | 130 | 7/3/2026 |
| 1.7.7 | 131 | 7/2/2026 |
| 1.7.6 | 150 | 6/28/2026 |
| 1.7.5 | 138 | 6/23/2026 |
| 1.7.4 | 135 | 6/23/2026 |
| 1.7.3 | 130 | 6/22/2026 |
| 1.7.2 | 139 | 6/22/2026 |
| 1.7.1 | 138 | 6/21/2026 |
| 1.7.0 | 140 | 6/21/2026 |
| 1.6.0 | 141 | 6/17/2026 |
See https://github.com/Tim81/VellumPDF/blob/main/CHANGELOG.md for release notes.