OfficeIMO.Reader.PowerPoint
3.5.1
Prefix Reserved
dotnet add package OfficeIMO.Reader.PowerPoint --version 3.5.1
NuGet\Install-Package OfficeIMO.Reader.PowerPoint -Version 3.5.1
<PackageReference Include="OfficeIMO.Reader.PowerPoint" Version="3.5.1" />
<PackageVersion Include="OfficeIMO.Reader.PowerPoint" Version="3.5.1" />
<PackageReference Include="OfficeIMO.Reader.PowerPoint" />
paket add OfficeIMO.Reader.PowerPoint --version 3.5.1
#r "nuget: OfficeIMO.Reader.PowerPoint, 3.5.1"
#:package OfficeIMO.Reader.PowerPoint@3.5.1
#addin nuget:?package=OfficeIMO.Reader.PowerPoint&version=3.5.1
#tool nuget:?package=OfficeIMO.Reader.PowerPoint&version=3.5.1
OfficeIMO.Reader.PowerPoint
PowerPoint presentation support for OfficeIMO.Reader.Core.
using OfficeIMO.Reader;
using OfficeIMO.Reader.PowerPoint;
OfficeDocumentReader reader = new OfficeDocumentReaderBuilder()
.AddPowerPointHandler()
.Build();
OfficeDocumentReadResult result = reader.ReadDocument("slides.pptx");
The package supports PPTX/PPTM plus OfficeIMO.PowerPoint's legacy PPT/POT/PPS import path. Its direct OfficeIMO dependencies are Reader.Core, PowerPoint and Core.
Project an open presentation
With OfficeIMO.Reader.PowerPoint imported, call
presentation.ReadDocument(sourceName, options, formatOptions, cancellationToken)
on a caller-owned PowerPointPresentation. It uses the canonical Reader mapping,
snapshots both option sets and enforces the projection's output budgets. Full
is the default. The presentation remains open for subsequent
InspectEmbeddedPayloads reads.
The source name supplies citations without reopening a file or inventing its byte hash, length or timestamp. Input and package admission settings cannot retroactively constrain the earlier native load; configure them when loading the presentation. Lean projection still requires a modern XML source model.
Text and metadata projection
ReaderOptions.Projection = ReaderProjection.TextAndMetadata supports PPTX,
PPTM, POTX, POTM, PPSX, PPSM and PPAM. It projects plain slide/table/note text,
native slide provenance, links and requested inspection evidence without image
asset reads, chart JSON visuals or Markdown rendering. Native slide pages retain
their authored membership; no layout engine or raster renderer runs.
Requested package evidence uses bounded inert payload descriptors. Unknown sizes
remain explicit without a scan. VBA part/signature-relationship metadata is
retained; binary module decoding is marked module-payload-unrequested.
Binary PPT/POT/PPS/PPA require Full. Lean reads refuse the legacy projection
before pictures and embedded storages are reconstructed, including binary input
with a misleading modern filename. Ordinary reads retain their current support.
Native parser limits remain separate from Reader's aggregate result budgets.
OpenXmlMaxPartUncompressedBytes and OpenXmlMaxTotalUncompressedBytes apply
native declared part/aggregate expansion admission before model loading, even
when Inspection is null. Configured ceilings produce terminal
ReaderResourceLimitException with the native failure retained; they are not
retried as password failures. These are package admission bounds, not a hard
limit on process memory or every decoder's actual work.
Inspect comments and authored visibility
OfficeDocumentReadResult inspected = reader.ReadDocument("review.pptx", new ReaderOptions {
Inspection = new ReaderInspectionOptions()
});
foreach (OfficeDocumentMetadataEntry entry in inspected.Metadata) {
if (entry.Category == OfficeDocumentInspectionCategories.Comment ||
entry.Category == OfficeDocumentInspectionCategories.Visibility)
Console.WriteLine($"Slide {entry.Location?.Slide}: {entry.Name} = {entry.Value}");
}
The adapter projects classic and modern comments from the owner model, preserving available author, parent, status and shape identifiers. Visibility records include authored hidden slides and hidden shapes inside groups. Original-package structural observations, embedded payload/VBA descriptors and loaded-content safety evidence remain separate categories. They do not execute presentation content or validate signature mathematics.
The shared inspection policy controls requested categories and aggregate record/character limits. Exceeded inspection or native safety ceilings terminate the operation. Legacy import limits and unsupported-feature diagnostics still apply.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. 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. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 is compatible. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.7.2
- OfficeIMO.Core (>= 3.5.1)
- OfficeIMO.PowerPoint (>= 3.5.1)
- OfficeIMO.Reader.Core (>= 3.5.1)
-
.NETStandard 2.0
- OfficeIMO.Core (>= 3.5.1)
- OfficeIMO.PowerPoint (>= 3.5.1)
- OfficeIMO.Reader.Core (>= 3.5.1)
-
net10.0
- OfficeIMO.Core (>= 3.5.1)
- OfficeIMO.PowerPoint (>= 3.5.1)
- OfficeIMO.Reader.Core (>= 3.5.1)
-
net8.0
- OfficeIMO.Core (>= 3.5.1)
- OfficeIMO.PowerPoint (>= 3.5.1)
- OfficeIMO.Reader.Core (>= 3.5.1)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on OfficeIMO.Reader.PowerPoint:
| Package | Downloads |
|---|---|
|
OfficeIMO.Reader.All
Composition-only preset for registering OfficeIMO.Reader's local format adapters. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 3.5.1 | 0 | 10/16/2026 |
| 3.4.5 | 600 | 10/10/2026 |
| 3.4.4 | 625 | 9/27/2026 |
| 3.4.3 | 484 | 9/12/2026 |
| 3.4.2 | 249 | 9/9/2026 |
| 3.4.1 | 255 | 9/7/2026 |
| 3.4.0 | 188 | 9/6/2026 |
| 3.3.0 | 240 | 9/2/2026 |
| 3.2.7 | 391 | 8/29/2026 |
| 3.2.6 | 1,483 | 8/22/2026 |
| 3.2.5 | 266 | 8/21/2026 |
| 3.2.4 | 258 | 8/19/2026 |
| 3.2.3 | 172 | 8/17/2026 |
| 3.2.2 | 379 | 8/13/2026 |
| 3.2.1 | 310 | 8/11/2026 |
| 3.2.0 | 468 | 8/7/2026 |
| 3.1.1 | 199 | 8/7/2026 |
| 3.1.0 | 182 | 8/6/2026 |
| 3.0.3 | 629 | 7/27/2026 |
| 3.0.2 | 173 | 7/26/2026 |