Wie man Präsentationen in .NET lädt
Aspose.Slides FOSS for .NET lets you open any .pptx Diese Anleitung umfasst das Öffnen einer Datei, Iteration von Folien, Lesen von Formtext und Rundfahrt beim Speichern.
Schritt für Schritte
Schritt 1: Installieren des Pakets
aspose-slides-foss/slides is not yet published — build from source until it ships. See the project README for build instructions.
Schritt 2: Öffnen Sie eine vorhandene Präsentation
Übergeben Sie den Pfad der Datei an: new Presentation().Verwenden Sie eine using Erklärung zur Sicherstellung der Reinigung.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation("input.pptx");
Console.WriteLine($"Slide count: {prs.Slides.Count}");
prs.Save("output.pptx", SaveFormat.Pptx);Unbekannte XML-Teile in der Quelldatei werden wörtlich erhalten: Die Bibliothek entfernt nie Inhalte, die sie noch nicht versteht.
Schritt 3: Slides überprüfen
Iterate über alle Folien und drucken Sie ihren Index:
using Aspose.Slides.Foss;
using var prs = new Presentation("deck.pptx");
for (int i = 0; i < prs.Slides.Count; i++)
{
var slide = prs.Slides[i];
int shapeCount = slide.Shapes.Count;
Console.WriteLine($"Slide {i}: {shapeCount} shapes");
}Schritt 4: Lesen von Textform
Iteration über Formen und Lesen von Text aus Formularen, die eine TextFrame:
using Aspose.Slides.Foss;
using var prs = new Presentation("deck.pptx");
foreach (var slide in prs.Slides)
{
foreach (var shape in slide.Shapes)
{
if (shape is IAutoShape autoShape && autoShape.TextFrame != null)
{
string text = autoShape.TextFrame.Text;
if (!string.IsNullOrWhiteSpace(text))
Console.WriteLine($" Shape text: {text}");
}
}
}Schritt 5: Lesen der Dokument-Eigenschaften
Zugriff auf Kerndokument-Eigenschaften von: prs.DocumentProperties:
using Aspose.Slides.Foss;
using var prs = new Presentation("deck.pptx");
var props = prs.DocumentProperties;
Console.WriteLine($"Title: {props.Title}");
Console.WriteLine($"Author: {props.Author}");
Console.WriteLine($"Subject: {props.Subject}");Schritt 6: Rundfahrt speichern
Nach der Überprüfung oder Änderung der Darstellung speichern Sie sie wieder in PPTX:
prs.Save("output.pptx", SaveFormat.Pptx);Wenn man auf einen anderen Pfad speichert, erstellt sich eine neue Datei.
Häufige Probleme und Lösungen
FileNotFoundException
Überprüfen Sie, ob der Weg zum .pptx Die Datenbank ist nicht korrekt im Verhältnis zum Arbeitsverzeichnis. Path.Combine für robuste Bahnkonstruktionen:
string path = Path.Combine(AppContext.BaseDirectory, "assets", "deck.pptx");
using var prs = new Presentation(path);Exception: File format is not supported
Die Bibliothek unterstützt die .pptx (Office Open XML) nur. Vermächtlichte Versionen .ppt (binäres PowerPoint 97-2003) nicht unterstützt.
Formen haben keine TextFrame-Eigenschaft
Einige Formen (Connector, PictureFrame) keine TextFrame.- Die Ausführung: IAutoShape und überprüfen Sie, ob Null vor dem Zugriff auf Text.
Häufig gestellte Fragen
Wird bei der Aufladung alle Originalinhalte erhalten?
Ja. Unbekannte XML-Teile werden auf der Rundreise gespeichert. Die Bibliothek entfernt keinen XML Inhalt, den sie noch nicht erkennt.
Kann ich ein passwortgeschütztes PPTX laden?
Passwortgeschützte (verschlüsselte) Präsentationen werden in dieser Ausgabe nicht unterstützt.
Kann ich eingebettete Bilder extrahieren?
Zugriff auf die Bilder-Sammlung: prs.Images gibt den ImageCollection.Jedes Bild hat Eigenschaften, um die Rohdaten zu lesen.
Wird das Laden von einem MemoryStream unterstützt?
Ja, die… Presentation Konstruktor akzeptiert eine Stream:
using var stream = new MemoryStream(pptxBytes);
using var prs = new Presentation(stream);
Console.WriteLine($"Slides: {prs.Slides.Count}");