Skip to main content

PDF engine

OfficeIMO.Pdf

Create, inspect, edit, merge, split, stamp, sign, validate, and render PDF files with a first-party .NET engine. Compare packages, examples, and limits.

MIT licensed No Office required Cross-platform .NET
Install dotnet add package OfficeIMO.Pdf
Generated output ยท OfficeIMO.Pdf
GENERATED OUTPUT

Ready for your workflow

Build, inspect, and transform documents through a focused API.

C#
using var document = CreateDocument();
document.Save();

One PDF model from creation to validation

Use OfficeIMO.Pdf when a workflow must own the PDF rather than hand it to a desktop application. The package covers authoring, inspection, page operations, forms, attachments, annotations, rendering, signatures, and validation through the same first-party model.

using OfficeIMO.Pdf;

PdfDocument.Create(pdf => pdf.Content(content => content
        .H1("Quarterly report")
        .Paragraph(paragraph => paragraph.Text("Generated without Office or a browser runtime."))))
    .Meta(title: "Quarterly report", author: "OfficeIMO")
    .Save("report.pdf");

Choose the workflow you need

WorkflowUse it for
BuildReports, invoices, forms, labels, portfolios, and page-aware components
InspectText, pages, links, images, attachments, outlines, forms, revisions, and active-content diagnostics
TransformMerge, split, extract, reorder, rotate, stamp, watermark, overlay, and metadata changes
SecureCMS-backed signatures, timestamps, certificate validation, and revision-aware inspection through OfficeIMO.Security
RenderPage images and format adapters used by Word, Excel, PowerPoint, HTML, RTF, and OpenDocument packages

Complex source formats do not map perfectly to PDF in every case. Conversion results expose diagnostics so applications can decide whether an approximation is acceptable.

Try real PDF workflows in the browser

The browser document workspace runs a focused set of OfficeIMO.Pdf operations through WebAssembly. Files stay in the current tab, and every successful operation produces a downloadable artifact plus a JSON report with input and output fingerprints.

Browser taskResult
InspectPage, encryption, form, annotation, attachment, active-content, signature-marker, and rewrite-readiness evidence
OrganizeMerge PDFs, split PDFs, extract PDF pages, delete PDF pages, reorder PDF pages, and rotate PDF pages without changing the selected source files
OptimizeDeterministic lossless optimization and Fast Web View profiles without rasterizing pages
Protect or unlockAES-256 Standard password protection, or a separate unprotected copy
RedactLiteral text removal followed by checks of extracted text, encoded strings, and decoded streams
CompareA self-contained visual gallery with expected, actual, and highlighted page differences

Browse every PDF workflow, open PDF tools, or download the showcase PDF used by the built-in samples.

Convert PDF content into editable formats

The workspace also exposes PDF to DOCX, detected PDF tables to XLSX, PDF to PPTX, and PDF to HTML. These are logical imports, not a promise that every fixed-position page can become the original editable source. Word reconstructs semantic content, Excel imports detected tables, and HTML supports semantic and positioned-review profiles; the browser selects positioned review so page geometry remains inspectable. PowerPoint defaults to native text boxes, detected tables, safe basic shapes, and separate supported images, with explicit visual-page, hybrid, and tables-only alternatives. Each download includes diagnostics that identify reconstructed, substituted, visual-only, truncated, or omitted content.

For application code, use the focused adapter that owns the target:

using OfficeIMO.Pdf;
using OfficeIMO.Word.Pdf;

PdfDocument pdf = PdfDocument.Load(File.ReadAllBytes("report.pdf"));
PdfWordConversionResult result = pdf.ToWordDocumentResult();
result.Value.Save("report.docx");

foreach (PdfConversionWarning warning in result.Report.Warnings) {
    Console.WriteLine($"{warning.Code}: {warning.Message}");
}

Important boundaries

  • Browser files are limited to 25 MiB each, ten PDFs and 75 MiB combined for multi-file tools, 500 parsed pages, 100 split outputs, and 25 pages per visual comparison. Generated artifacts are capped at 96 MiB, with a 64 MiB serialized-PDF ceiling for split archives.
  • Optimization is deliberately lossless. Scan-oriented image downsampling and other lossy compression need a separate policy and evidence contract.
  • OCR and searchable-PDF generation are provider-bound roadmap work. The core package remains dependency-light and does not pretend that image-only pages contain readable text.
  • Password protection is not a digital signature. CMS-backed signing, timestamping, trust validation, and revision inspection remain .NET workflows through OfficeIMO.Pdf and OfficeIMO.Security.
  • Filling a visual signature field is also different from applying a cryptographic signature. Applications should present those actions separately.

Next step

Turn the package into a working document.

Follow a focused guide, inspect the generated API reference, or try a browser-safe conversion.