Skip to main content

Third-Party Dependencies

Review runtime dependencies and upstream licenses for the public OfficeIMO package family, with package-level attribution and links to authoritative projects.

OfficeIMO packages are published under the MIT License, but several packages intentionally build on upstream open-source components. This page exists to make those relationships easier to review during OSS approval, procurement, and redistribution checks.

Scope

  • Covers shipped runtime dependencies for the public OfficeIMO package families documented on this site.
  • Focuses on user-visible dependencies rather than test-only packages, benchmark harnesses, sample apps, or framework/reference-only helpers.
  • Exact package ranges live in the linked .csproj files and NuGet metadata.
  • This page is informational only and is not legal advice.

Package Family Overview

OfficeIMO package or familyUpstream components used in the repo todayWhy they are there
OfficeIMO.Drawing.HarfBuzzHarfBuzzSharp 14.2.1.1 plus matching Windows, Linux, macOS, and WebAssembly native assetsOptional full OpenType GSUB/GPOS shaping through the first-party Drawing provider contract; Drawing and PDF core remain independent of HarfBuzz
OfficeIMO.WordDocumentFormat.OpenXml [3.5.1, 4.0.0); Microsoft.Bcl.AsyncInterfaces 10.0.9 on legacy targetsOOXML document model and compatibility helpers; colors and image metadata come from first-party OfficeIMO.Core and remain in the OfficeIMO.Drawing namespace
OfficeIMO.ExcelDocumentFormat.OpenXml [3.5.1, 4.0.0); Microsoft.Bcl.AsyncInterfaces 10.0.9 and System.Text.Json [10.0.7, 11.0.0) on legacy targetsWorkbook model, first-party image metadata, and compatibility helpers for older target frameworks
OfficeIMO.PowerPointDocumentFormat.OpenXml [3.5.1, 4.0.0); Microsoft.Bcl.AsyncInterfaces 10.0.9 on legacy targetsPresentation OOXML model, packaging, and compatibility helpers
OfficeIMO.Word.HtmlDocumentFormat.OpenXml [3.5.1, 4.0.0); AngleSharp 1.5.2 and AngleSharp.Css 1.0.0-beta.216 through OfficeIMO.HtmlOOXML plus shared HTML and CSS parsing for Word conversion workflows
OfficeIMO.Markdown.HtmlAngleSharp 1.5.2 and AngleSharp.Css 1.0.0-beta.216 through OfficeIMO.HtmlShared HTML and CSS parsing for Markdown conversion and bridge scenarios
OfficeIMO.Word.PdfFirst-party OfficeIMO.Word and OfficeIMO.Pdf project referencesWord-to-PDF conversion through the OfficeIMO PDF engine
OfficeIMO.Excel.PdfFirst-party OfficeIMO.Excel and OfficeIMO.Pdf project referencesExcel-to-PDF conversion through the OfficeIMO PDF engine
OfficeIMO.VisioSystem.IO.Packaging 10.0.8; Microsoft.Bcl.AsyncInterfaces 10.0.9 on net472OPC packaging support for .vsdx files and legacy async compatibility; colors and image metadata come from first-party OfficeIMO.Core and remain in the OfficeIMO.Drawing namespace
OfficeIMO.MarkdownNo third-party runtime package referencesKeeps its runtime surface self-contained
OfficeIMO.CSVSystem.Buffers 4.5.1 on legacy targetsCompatibility buffer primitives; shared document and data-mapping contracts come from first-party OfficeIMO.Core
OfficeIMO.Reader.Core, selective OfficeIMO.Reader.* adapters, and OfficeIMO.Reader.AllCore uses System.Text.Json [10.0.7, 11.0.0) only on legacy targets; adapters compose their named first-party format packagesCore stays format-neutral, selective adapters add only their owning engines, and All deliberately composes every local managed adapter
OfficeIMO.SecurityBouncyCastle.Cryptography [2.6.2, 3.0.0)One neutral CMS, S/MIME, RFC 3161, and X.509 engine shared directly by Email and PDF without format-specific cryptography packages

Additional Microsoft compatibility helpers may appear on older target frameworks, but the table above focuses on the upstream packages that most teams will care about during license review.

Upstream License Notes

Upstream projectLicense or modelOfficeIMO packages that use itWhat to know
HarfBuzzSharpMITDrawing.HarfBuzzOptional .NET bindings and platform-native HarfBuzz assets for full OpenType shaping; not referenced by Drawing or PDF core packages.
DocumentFormat.OpenXmlMITWord, Excel, PowerPoint, Word.HtmlThis is Microsoft's official Open XML SDK and the main OOXML building block in the Office document packages.
AngleSharpMITHtml, Markdown.Html, Word.Html, Reader.HtmlUsed for shared HTML parsing and DOM work.
AngleSharp.CssMITHtml, Markdown.Html, Word.Html, Reader.HtmlAdds CSS parsing on top of the shared HTML engine.
Microsoft.Bcl.AsyncInterfacesMITWord, Excel, PowerPoint, and Visio legacy targetsProvides async interface compatibility for older target frameworks.
System.Text.JsonMITExcel and Reader.Core legacy targetsProvides JSON support where it is not supplied by the target framework.
System.IO.PackagingMITVisioMicrosoft packaging primitives for OPC-style containers.
System.BuffersMITCSV legacy targetsProvides buffer primitives for older target frameworks.
BouncyCastle.CryptographyMITSecurity; transitively Email and PDF security workflowsImplements the neutral CMS/X.509 primitives behind the OfficeIMO-owned security contracts without exposing vendor types.

What We Recommend Teams Check

  1. Review the exact PackageReference list for the OfficeIMO packages you ship, not just the repo root license.
  2. Re-check upstream terms whenever a dependency version changes, especially around parsing, packaging, or compatibility helper libraries.
  3. Keep a copy of the upstream notices or license URLs in your own release/compliance workflow if your organization requires that.

How We Address This In The Website

  • We keep the first-party OfficeIMO package license visible across the repo and site.
  • We document the public dependency surface here instead of hiding it in project files.
  • We keep the page scoped to real shipped package dependencies so it stays reviewable and current.

If you need the exact current references, start with the repository project files such as OfficeIMO.Word.csproj, OfficeIMO.Excel.csproj, OfficeIMO.Word.Pdf.csproj, OfficeIMO.Excel.Pdf.csproj, and OfficeIMO.Visio.csproj.