Skip to content
JeffeekPublic

About

No description, website, or topics provided.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Unchained

Unchained Logo

MIT-licensed document processing for .NET — a free, open-source suite of libraries for creating and manipulating documents in all common business formats. No per-server fees, no copyleft restrictions, no proprietary lock-in.

CI License: MIT


Packages

Available now

Package Description NuGet
Unchained.Pdf PDF — load, save, extract text, fill forms, sign, encrypt, PDF/A, PDF/UA NuGet
Unchained.Pdf.Rendering PDF page rasterization to PNG (FreeType2 + HarfBuzz shaping) NuGet
Unchained.Pptx PPTX — read, write, edit slides, charts, animations; export to PDF/HTML/SVG/ODP NuGet
Unchained.Pptx.Rendering PPTX slide rasterization to PNG (FreeType2 + HarfBuzz shaping) NuGet
Unchained.Ooxml Shared OOXML infrastructure (OPC packaging, DrawingML, EMU) used by the OOXML formats NuGet
Unchained.Drawing.Runtimes Native FreeType2 binaries — installed automatically with any Rendering package NuGet

Planned

Package Formats
Unchained.Docx DOCX · ODT
Unchained.Xlsx XLSX · ODS · CSV

Concept

Every Unchained package follows the same principles:

  • MIT licensed — use freely in commercial, proprietary, and open-source projects
  • No copyleft — consuming Unchained never requires you to open-source your application
  • Standards-based core — each format's core is implemented directly against its open standard (ISO 32000, ECMA-376, ODF); dependencies are permissively licensed (MIT / Apache-2.0 / BSD / FTL / SIL OFL), never GPL or LGPL
  • Async-first — all public APIs are async Task; safe on ASP.NET and gRPC pipelines
  • Pure managed where the standard library suffices; focused libraries pull in image codecs, text shaping, and font rasterization, with native binaries (FreeType2, HarfBuzz) bundled for every platform

Unchained.Pdf — quick start

<!-- PDF operations -->
<PackageReference Include="Unchained.Pdf" Version="0.1.0" />

<!-- + page rendering to PNG -->
<PackageReference Include="Unchained.Pdf.Rendering" Version="0.1.0" />
using Unchained.Pdf.Engine;

var processor = new DocumentProcessor();

// Load
await using var doc = await processor.LoadAsync("invoice.pdf");
Console.WriteLine($"{doc.PageCount} pages — {doc.Pages[1].ExtractText()}");

// Save
await processor.SaveAsync(doc, "output.pdf");

See the Unchained.Pdf documentation for the full API: text extraction, table generation, merging, annotations, form filling, digital signatures, encryption, PDF/A, and more.


Unchained.Pptx — quick start

<!-- PPTX operations -->
<PackageReference Include="Unchained.Pptx" Version="0.1.0" />

<!-- + slide rendering to PNG -->
<PackageReference Include="Unchained.Pptx.Rendering" Version="0.1.0" />
using Unchained.Pptx.Engine;

var processor = new PresentationProcessor();

// Load and read
using var doc = await processor.LoadAsync("deck.pptx");
foreach (var slide in doc.Slides)
    Console.WriteLine(slide.GetAllText());

// Export to PDF
await processor.SaveAsPdfAsync(doc, "deck.pdf");

See the Unchained.Pptx documentation for the full API: slide editing, shapes, tables, charts, animations, themes, encryption, and exports to PDF/HTML/SVG/ODP.


Samples

Runnable console walkthroughs live in samples/:

Sample Demonstrates
Unchained.Pdf.Samples Create from Markdown, extract text, generate tables, merge, watermark, set metadata, encrypt, render to PNG
Unchained.Pptx.Samples Build a deck (text/shapes/table), read text, export to PDF/SVG/HTML, render slides, encrypt
# Run every demo in a sample
dotnet run --project samples/Unchained.Pdf.Samples -- all
dotnet run --project samples/Unchained.Pptx.Samples -- all

# Or run a single demo (omit the argument for an interactive menu)
dotnet run --project samples/Unchained.Pdf.Samples -- tables

Output files are written to an output/ directory next to each sample executable.


Platform support

All packages target net8.0 · net9.0 · net10.0 and run on:

Platform Core Rendering
Windows x64 / arm64 ✅ ✅
Linux x64 / arm64 ✅ ✅
macOS x64 (Intel) / arm64 (Apple Silicon) ✅ ✅

License

MIT — see LICENSE.txt.

Third-party component credits and copyright notices are in THIRD_PARTY_NOTICES.md.


Contributing

See CONTRIBUTING.md. Issues and pull requests are welcome at github.com/Jeffeek/Unchained.

About

No description, website, or topics provided.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages