1. Produkte
  2.   Präsentation
  3.   .NET
  4.   PPTXTemplater
 
  

Kostenlose C# .NET-Bibliothek zur Generierung von PowerPoint PPTX aus Vorlagen

Open-Source C# .NET PPTX-API ermöglicht das dynamische Erstellen von PowerPoint-Präsentationen (.pptx) aus Vorlagen. Ersetzen Sie Text oder Bilder, fügen Sie Folien hinzu/entfernen Sie sie oder klonen Sie Folien in C#‑Apps.

Was ist PPTXTemplater?

Müde davon, manuell unzählige PowerPoint-Präsentationen zu erstellen und zu aktualisieren? Wenn Ihre Anwendung dynamische, datengetriebene .pptx-Dateien erzeugen muss, war dies programmatisch traditionell eine komplexe und frustrierende Aufgabe. Das manuelle Manipulieren von XML im PPTX-Container ist ein Albtraum, und oft greifen Entwickler zu umständlichen Methoden wie dem Kopieren von Folien oder der Verwendung schwer zu kontrollierender COM-Objekte. Was wäre, wenn Sie eine schöne Vorlage direkt in PowerPoint entwerfen und sie dann programmatisch mit Daten füllen könnten, und das mit einer einfachen, leichten und rein programmatischen .NET-Bibliothek? Lernen Sie PPTXTemplater kennen, ein genial offenes Open-Source-Projekt, das die PowerPoint-Automatisierung revolutioniert.

PPTXTemplater ist eine C#-Bibliothek, die Softwareentwickler befähigt, programmgesteuert PowerPoint (.pptx)-Dateien basierend auf vordefinierten Vorlagen zu erstellen und zu verwalten. Sie nutzt den PPTXTemplater und bietet eine höherstufige Abstraktion, die die sonst komplexe Aufgabe der Manipulation von PowerPoint-Dokumenten vereinfacht. Die Kernidee besteht darin, eine Vorlage mit Platzhaltern zu erstellen und dann den PPTXTemplater zu verwenden, um diese Platzhalter mit Ihren Daten zu füllen, was es zu einer idealen Lösung für die Erstellung von Berichten, Zertifikaten, Angeboten und mehr macht.

Previous Next

Erste Schritte mit PPTXTemplater

Der empfohlene Weg, PPTXTemplater zu installieren, ist über GitHub. Bitte verwenden Sie den folgenden Befehl für eine reibungslose Installation.

Installieren Sie PPTXTemplater von GitHub

 git clone https://github.com/tkrotoff/PptxTemplater.git

Vorlagenbasierte PPTX-Dateigenerierung über C#

Die Grundlage von PptxTemplater ist sein vorlagenbasierter Ansatz. Sie beginnen damit, eine Standard‑PowerPoint‑Präsentation zu erstellen, die als Ihre Vorlage dient. In dieser Vorlage können Sie Platzhalter für dynamische Inhalte mit einer einfachen und intuitiven Syntax definieren, typischerweise {{placeholder_name}}. Das ermöglicht es Ihnen, Ihre Folien direkt in PowerPoint zu gestalten und dabei die volle Kontrolle über die visuellen Aspekte Ihrer Präsentation zu behalten. Hier ist ein einfaches Beispiel, das zeigt, wie man über die C#‑Bibliothek eine PowerPoint‑Vorlage mit zwei Folien erstellt?

Wie erstellt man eine PowerPoint-Vorlage mit zwei Folien über die C#-Bibliothek?

const string srcFileName = "template.pptx";
const string dstFileName = "final.pptx";
File.Delete(dstFileName);
File.Copy(srcFileName, dstFileName);

Pptx pptx = new Pptx(dstFileName, FileAccess.ReadWrite);
int nbSlides = pptx.SlidesCount();
Assert.AreEqual(2, nbSlides);

// First slide
{
    PptxSlide slide = pptx.GetSlide(0);
    slide.ReplaceTag("{{hello}}", "HELLO HOW ARE YOU?", PptxSlide.ReplacementType.Global);
    slide.ReplaceTag("{{bonjour}}", "BONJOUR TOUT LE MONDE", PptxSlide.ReplacementType.Global);
    slide.ReplaceTag("{{hola}}", "HOLA MAMA QUE TAL?", PptxSlide.ReplacementType.Global);
}

// Second slide
{
    PptxSlide slide = pptx.GetSlide(1);
    slide.ReplaceTag("{{hello}}", "H", PptxSlide.ReplacementType.Global);
    slide.ReplaceTag("{{bonjour}}", "B", PptxSlide.ReplacementType.Global);
    slide.ReplaceTag("{{hola}}", "H", PptxSlide.ReplacementType.Global);
}

Text ersetzen in PPTX-Präsentation über C#

Eine der grundlegendsten Funktionen von PptxTemplater ist seine Fähigkeit, Textplatzhalter durch Ihre Daten zu ersetzen. Das ist äußerst nützlich, um Präsentationen mit Namen, Daten, Zahlen und anderen textlichen Informationen zu personalisieren. Hier ist ein einfaches Beispiel, das zeigt, wie Softwareentwickler Text in einer PPTX‑Präsentation innerhalb von C#‑/.NET‑Anwendungen ersetzen können.

Wie ersetzt man Text in einer PPTX-Präsentation mit der C#-Bibliothek?

using PptxTemplater;

// Load the template
using (var presentation = new Presentation("template.pptx"))
{
    // Define the data
    var data = new Dictionary
    {
        { "name", "John Doe" },
        { "date", DateTime.Now.ToShortDateString() }
    };

    // Fill the template
    presentation.Fill(data);

    // Save the new presentation
    presentation.SaveAs("output.pptx");
}

Bilder ersetzen in PPTX-Präsentation über C#

Die Open-Source-Bibliothek PptxTemplater ist nicht nur auf Text beschränkt. Softwareentwickler können auch Bilder in ihren Vorlagen mit nur wenigen Codezeilen ersetzen. Dies ist besonders nützlich für die Erstellung von Produktkatalogen, Mitarbeiterausweisen oder jeder anderen Präsentation, die dynamische Bilder erfordert. Hier ist ein einfaches Beispiel, das zeigt, wie man Bilder in PPTX-Präsentationen ersetzt. Um ein Bild zu ersetzen, müssen Sie zunächst ein Platzhalterbild in Ihrer Vorlage hinzufügen und ihm einen spezifischen Namen geben (z. B. "photo1").

Wie ersetzt man Text in einer PPTX-Präsentation mit der C#-Bibliothek?

// Assuming you have a slide with an image named "photo1"
var slide = presentation.Slides[0];
slide.ReplacePicture("photo1", "new_image.png");

Folien hinzufügen, entfernen oder duplizieren über C#

Die Open-Source-Bibliothek PptxTemplater gibt Ihnen eine feinkörnige Kontrolle über die Folien in Ihrer Präsentation. Sie können vorhandene Folien duplizieren, um dynamische Abschnitte zu erstellen, oder Folien entfernen, die basierend auf Ihren Daten nicht benötigt werden. Darüber hinaus ist es auch möglich, neue Folien hinzuzufügen und unerwünschte zu entfernen. Das folgende Beispiel zeigt, wie man in C#‑Anwendungen eine Folie dupliziert oder entfernt.

Wie klont oder entfernt man eine Folie in einer PPTX-Präsentation über die C#-Bibliothek?

/// Clone a slide
var newSlide = presentation.CloneSlide(0);

// Remove a slide
presentation.RemoveSlide(1);
 Deutsch