Generieren Sie PPTX-Thumbnails in C#

Miniaturansichten werden häufig verwendet, um kleinere Versionen der größeren Bilder zu erstellen. Sie erleichtern das Betrachten oder Blättern durch die Bilderliste. MS PowerPoint stellt Ihnen auch die Miniaturansichten der Folien in einer Präsentation zur Verfügung. Mithilfe der Miniaturansichten der Folien können Sie ganz einfach durch die Präsentation gehen und zu einer bestimmten Folie navigieren. In diesem Artikel erfahren Sie, wie Sie mit C# Miniaturansichten von PowerPoint PPTX oder PPT generieren. Dies kann in Szenarien nützlich sein, z. B. wenn Sie Ihren eigenen web oder desktopbasierten PowerPoint-Viewer erstellen müssen.

.NET API zum Generieren von Miniaturansichten für PowerPoint PPTX/PPT

Um Miniaturansichten für PPTX oder PPT-Präsentationen zu generieren, verwenden wir Aspose.Slides for .NET. Es ist eine leistungsstarke API, mit der Sie PowerPoint und OpenOffice Dokumente erstellen und bearbeiten können. Darüber hinaus können Sie Präsentationen in andere Dateiformate konvertieren. Sie können die API entweder herunterladen oder sie mit NuGet installieren.

PM> Install-Package Aspose.Slides.NET

Generieren Sie Thumbnails für PPTX oder PPT mit C#

Im Folgenden sind die Schritte zum Generieren von Miniaturansichten einer PPTX-Präsentation mit C# aufgeführt.

  1. Erstellen Sie zunächst eine Instanz der Klasse Presentation, um die Präsentation zu laden.
  2. Durchlaufen Sie jede ISlide in der Presentation.Slides Sammlung.
  3. Generieren Sie mit der methode ISlide.GetThumbnail(1f, 1f) eine Miniaturansicht jeder Folie und erhalten Sie die Referenz der Miniaturansicht in ein Bitmap objekt.
  4. Speichern Sie schließlich die Miniaturansicht in Ihrem gewünschten Bildformat mit der methode Bitmap.Save(String, System.Drawing.Imaging.ImageFormat).

Das folgende Codebeispiel zeigt, wie Miniaturansichten einer PPTX-Präsentation mit C# generiert werden.

// PowerPoint Präsentation laden
using (Presentation pres = new Presentation("presentation.pptx"))
{
    foreach (ISlide sld in pres.Slides)
    {
        // Erstellen Sie ein Bild in voller Größe
        Bitmap bmp = sld.GetThumbnail(1f, 1f);

        // Speichern Sie das Bild im JPEG Format auf der Festplatte
        bmp.Save(String.Format("slide_{0}.jpg", sld.SlideNumber), System.Drawing.Imaging.ImageFormat.Jpeg);
    }
}

Generieren Sie Miniaturansichten mit benutzerdefinierten Abmessungen

Sie können auch die Abmessungen der Miniaturansichten Ihren Anforderungen entsprechend anpassen. Dies kann mit den Eigenschaften Presentation.SlideSize.Size.Width und Presentation.SlideSize.Size.Height erreicht werden. Im Folgenden sind die Schritte zum Ausführen dieses Vorgangs aufgeführt.

  1. Erstellen Sie zunächst eine Instanz der Klasse Presentation, um die Präsentation zu laden.
  2. Stellen Sie dann die gewünschten Abmessungen der Miniaturansichten ein und skalieren Sie die Werte mit den Eigenschaften Width und Height.
  3. Durchlaufen Sie jede ISlide in der Presentation.Slides Sammlung.
  4. Generieren Sie mit der methode ISlide.GetThumbnail(Single, Single) eine Miniaturansicht jeder Folie und erhalten Sie die Referenz der Miniaturansicht in ein Bitmap objekt.
  5. Speichern Sie schließlich die Miniaturansicht in Ihrem gewünschten Bildformat mit der methode Bitmap.Save(String, System.Drawing.Imaging.ImageFormat).

Das folgende Codebeispiel zeigt, wie Miniaturansichten eines PPTX mit benutzerdefinierten Abmessungen generiert werden.

// PowerPoint Präsentation laden
using (Presentation pres = new Presentation("presentation.pptx"))
{
    // Benutzerdefinierte Dimension
    int desiredX = 1200;
    int desiredY = 800;

    // Skalierten Wert von X und Y erhalten
    float ScaleX = (float)(1.0 / pres.SlideSize.Size.Width) * desiredX;
    float ScaleY = (float)(1.0 / pres.SlideSize.Size.Height) * desiredY;

    foreach (ISlide sld in pres.Slides)
    {
        // Erstellen Sie ein Bild in voller Größe
        Bitmap bmp = sld.GetThumbnail(ScaleX, ScaleY);

        // Speichern Sie das Bild im JPEG Format auf der Festplatte
        bmp.Save(String.Format("slide_{0}.jpg", sld.SlideNumber), System.Drawing.Imaging.ImageFormat.Jpeg);
    }
}

Holen Sie sich eine kostenlose API Lizenz

Sie können Aspose.Slides for .NET ohne Evaluierungseinschränkungen verwenden, indem Sie eine temporäre Lizenz anfordern.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie Miniaturansichten von PowerPoint PPTX oder PPT mit C# generieren. Außerdem haben Sie gesehen, wie Sie Miniaturansichten mit den gewünschten Abmessungen erstellen. Darüber hinaus können Sie die Dokumentation besuchen, um andere Funktionen der API zu erkunden. Sie können uns auch gerne Ihre Fragen über unser Forum mitteilen.

Siehe auch