PortableDocument.Content 0.1.0-preview.5

This is a prerelease version of PortableDocument.Content.
dotnet add package PortableDocument.Content --version 0.1.0-preview.5
                    
NuGet\Install-Package PortableDocument.Content -Version 0.1.0-preview.5
                    
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="PortableDocument.Content" Version="0.1.0-preview.5" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="PortableDocument.Content" Version="0.1.0-preview.5" />
                    
Directory.Packages.props
<PackageReference Include="PortableDocument.Content" />
                    
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 PortableDocument.Content --version 0.1.0-preview.5
                    
#r "nuget: PortableDocument.Content, 0.1.0-preview.5"
                    
#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 PortableDocument.Content@0.1.0-preview.5
                    
#: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=PortableDocument.Content&version=0.1.0-preview.5&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=PortableDocument.Content&version=0.1.0-preview.5&prerelease
                    
Install as a Cake Tool

FreeDF for .NET

Read, render, extract, and edit PDFs in C# - without a PDF service. FreeDF is a managed .NET 10 PDF engine. Choose the packages you need; the rendering package brings the core document and content libraries with it. PDF files stay in your application unless you explicitly send them elsewhere.

Homepage and browser editor | Source | Release notes | PDF feature coverage

Get started

dotnet add package PortableDocument.Render --version 0.1.0-preview.5
using PortableDocument.Document;
using Pdf = PortableDocument.Render.PortableDocument;

var document = PdfDocument.Load(File.ReadAllBytes("input.pdf"));
var page = document.Pages[0];
var text = string.Concat(Pdf.ExtractText(page).Select(span => span.Text));
File.WriteAllBytes("page-1.png", Pdf.RenderPage(page, dpi: 144).ToPng());
Console.WriteLine(text);

PdfDocument.Load reads a complete byte array into memory. Pages is zero-indexed. The Pdf alias distinguishes the rendering entry point from the PortableDocument namespace.

Choose your packages

Package Use it for
PortableDocument.Core PDF objects, parsing, filters, writing, encryption, and signature primitives
PortableDocument.Document Pages, editing, forms, annotations, metadata, outlines, and validation
PortableDocument.Content Content interpretation, fonts, text shaping, color, and image decoding
PortableDocument.Render Page-to-PNG rendering, text extraction, annotation tools, and redaction
PortableDocument.FallbackFonts Optional Latin fonts and CJK glyph assets for PDFs without embedded fonts
PortableDocument.Signing.Http Optional HTTP RFC 3161 timestamp-authority client

Use the same version across explicitly referenced FreeDF packages. Package dependencies are resolved automatically; you don't need to install all six.

Render with bundled fallback fonts

dotnet add package PortableDocument.FallbackFonts --version 0.1.0-preview.5
using PortableDocument.FallbackFonts;
using PortableDocument.Render;

var options = new PdfRenderOptions
{
    FontFallback = new BundledFontFallback(new DirectoryAssetSource())
};
var rendered = Pdf.RenderPage(page, options, dpi: 144);
File.WriteAllBytes("page-1.png", rendered.ToPng());

The font package copies its assets beside your application. This example uses only bundled substitutes for consistent output across hosts; omitting FontFallback uses installed system fonts. The optional timestamp client performs HTTP requests only when invoked.

Preview versions and compatibility

FreeDF is actively developed and does not claim complete PDF 2.0 parity. Preview releases may change APIs or output; pin a version and test your PDF corpus before upgrading. Use 0.1.0-preview.3 or later: preview.2 contains a fallback-font packaging defect.

All six packages share a version. Tags follow vMAJOR.MINOR.PATCH-preview.N for previews and vMAJOR.MINOR.PATCH for stable releases. See GitHub Releases for changes, known limitations, and downloadable packages.

PDF actions and JavaScript are inspected as data, not executed. Validation and signature APIs report what they can establish; they are not a substitute for independent PDF/A, PDF/UA, or signature-trust certification. Review the coverage matrix before relying on a particular feature.

License and support

FreeDF code is MIT licensed. Copyright (c) 2026-Present David Pine. Included third-party data and fonts retain their own licenses; packages include THIRD-PARTY-NOTICES.md and the applicable license files.

Report an issue with a minimal reproduction, package version, and runtime details. Share a PDF only if you have permission and it contains no sensitive information.

Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on PortableDocument.Content:

Package Downloads
PortableDocument.Render

PDF software rendering, structured text extraction, annotation tools, and redaction.

PortableDocument.FallbackFonts

Optional metric-compatible fallback fonts (Liberation, DejaVu) and lazily loaded Noto Sans CJK glyph data for non-embedded PDF fonts.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.0-preview.5 48 11/3/2026
0.1.0-preview.3 42 11/3/2026
0.1.0-preview.2 53 11/3/2026