Test in einer Live-Umgebung
Test in der Produktion ohne Wasserzeichen.
Funktioniert überall, wo Sie es brauchen.
Die Notwendigkeit der UmstellungPowerPoint präsentationen in Bildformaten kommen im Bereich der Softwareentwicklung häufig vor. Viele Entwickler finden es nützlich, PowerPoint-Dateien programmatisch in Fotos umwandeln zu können, sei es für die Erstellung von Vorschauen, Miniaturansichten oder die Systemintegration. In diesem Artikel wird erklärt, wie man diesen Vorgang mit C# ppt to image durchführen kann, und es werden einige Beispielcodes aufgeführt, die Ihnen dabei helfen.
Erstellen Sie eine PowerPoint-Anwendungsinstanz.
Öffnen Sie die Präsentation über die Instanz.
Prüfen und erstellen Sie einen Ausgabeordner.
Iterieren Sie durch Folien und exportieren Sie Folien in Bilder.
Werfen wir einen kurzen Blick auf die Bedeutung der Konvertierung von PowerPoint-Folien in Fotos, bevor wir auf die Einzelheiten eingehen. Auch wenn PowerPoint ein großartiges Werkzeug zur Erstellung dynamischer Präsentationen ist, ist es nicht immer möglich, diese Dateien in ihrem ursprünglichen Format weiterzugeben. Manchmal werden nur bestimmte Folien oder Fotos aus der Präsentation benötigt, und in anderen Fällen erlauben verschiedene Systeme und Einstellungen möglicherweise keine direkte Wiedergabe von PowerPoint-Dateien. Durch die Umwandlung von PowerPoint-Präsentationen in Bilder wird eine allumfassende Lösung geboten, die sich einfach teilen und auf einer Vielzahl von Geräten und Anwendungen anzeigen lässt.
Es gibt mehrere Methoden, um PowerPoint-Präsentationen in C# in Fotos umzuwandeln. Die Verwendung desMicrosoft.Office.Interop.PowerPoint namespace, der Klassen und Methoden für die programmatische Anbindung an PowerPoint-Anwendungen bietet, ist ein beliebter Ansatz. Dies bietet umfangreiche Möglichkeiten für die Arbeit mit PowerPoint-Dateien.
Führen Sie die folgenden Schritte aus, um ein neues Visual Studio-Projekt zu erstellen:
Öffnen Sie die Visual Studio IDE. Stellen Sie sicher, dass Sie Folgendes installiert habenVisual Studio auf Ihrem PC, bevor Sie ihn benutzen.
Ein neues Projekt starten:
Wählen Sie Datei, Neu, und schließlich Projekt.
Wählen Sie im Feld "Ein neues Projekt erstellen" Ihre bevorzugte Programmiersprache(C#, zum Beispiel) von der linken Seite.
Wählen Sie dann die "Konsolen-App" oder "Konsolen-App"(.NET Core)vorlage" aus der Liste der verfügbaren Projektvorlagen.
Bitte füllen Sie den Abschnitt "Name" aus, um Ihrem Projekt einen Namen zu geben.
Wählen Sie den Speicherort für das Projekt.
Klicken Sie auf "Erstellen", um mit der Arbeit an einem neuen Konsolenanwendungsprojekt zu beginnen.
Beginnen wir mit der Verwendung des Microsoft.Office.Interop.PowerPoint-Namensraums, um PowerPoint-Folien in Bilder zu konvertieren. Stellen Sie sicher, dass die erforderlichen Baugruppen installiert sind und Ihrem C#-Projekt als Referenzen hinzugefügt wurden. Diese Assemblies finden Sie normalerweise, indem Sie direkt auf die InterOp-Assemblies verweisen oder die Microsoft Office Primary Interop Assemblies installieren(PIA).
using System.IO;
using Microsoft.Office.Interop.PowerPoint;
class Program
{
static void Main(string [] args)
{
string pptFilePath = "demo.pptx"; // Path to your PowerPoint file
string outputFolder = "output_images"; // Output folder path where images will be saved
ConvertPptToImages(pptFilePath, outputFolder);
}
static void ConvertPptToImages(string pptFilePath, string outputFolder)
{
Application pptApplication = new Application();
Presentation pptPresentation = pptApplication.Presentations.Open(pptFilePath, MsoTriState.msoFalse, MsoTriState.msoFalse, MsoTriState.msoFalse);
if (!Directory.Exists(outputFolder))
Directory.CreateDirectory(outputFolder);
int slidesCount = pptPresentation.Slides.Count;
for (int i = 1; i <= slidesCount; i++)
{
string outputPath = Path.Combine(outputFolder, $"Slide{i}.png");
pptPresentation.Slides[i].Export(outputPath, "png", 1024, 768);
//saving the presentation slides into png images
}
pptPresentation.Close();
pptApplication.Quit();
}
}
using System.IO;
using Microsoft.Office.Interop.PowerPoint;
class Program
{
static void Main(string [] args)
{
string pptFilePath = "demo.pptx"; // Path to your PowerPoint file
string outputFolder = "output_images"; // Output folder path where images will be saved
ConvertPptToImages(pptFilePath, outputFolder);
}
static void ConvertPptToImages(string pptFilePath, string outputFolder)
{
Application pptApplication = new Application();
Presentation pptPresentation = pptApplication.Presentations.Open(pptFilePath, MsoTriState.msoFalse, MsoTriState.msoFalse, MsoTriState.msoFalse);
if (!Directory.Exists(outputFolder))
Directory.CreateDirectory(outputFolder);
int slidesCount = pptPresentation.Slides.Count;
for (int i = 1; i <= slidesCount; i++)
{
string outputPath = Path.Combine(outputFolder, $"Slide{i}.png");
pptPresentation.Slides[i].Export(outputPath, "png", 1024, 768);
//saving the presentation slides into png images
}
pptPresentation.Close();
pptApplication.Quit();
}
}
Imports System.IO
Imports Microsoft.Office.Interop.PowerPoint
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim pptFilePath As String = "demo.pptx" ' Path to your PowerPoint file
Dim outputFolder As String = "output_images" ' Output folder path where images will be saved
ConvertPptToImages(pptFilePath, outputFolder)
End Sub
Private Shared Sub ConvertPptToImages(ByVal pptFilePath As String, ByVal outputFolder As String)
Dim pptApplication As New Application()
Dim pptPresentation As Presentation = pptApplication.Presentations.Open(pptFilePath, MsoTriState.msoFalse, MsoTriState.msoFalse, MsoTriState.msoFalse)
If Not Directory.Exists(outputFolder) Then
Directory.CreateDirectory(outputFolder)
End If
Dim slidesCount As Integer = pptPresentation.Slides.Count
For i As Integer = 1 To slidesCount
Dim outputPath As String = Path.Combine(outputFolder, $"Slide{i}.png")
pptPresentation.Slides(i).Export(outputPath, "png", 1024, 768)
'saving the presentation slides into png images
Next i
pptPresentation.Close()
pptApplication.Quit()
End Sub
End Class
Der C#-Namensraum, der für die Arbeit mit PowerPoint-Anwendungen benötigt wird, wird mit der Deklaration "Microsoft.Office.Interop.PowerPoint" importiert. Der Einstiegspunkt des Programms ist die Methode Main
. Er bezeichnet den Ausgabeordner(outputFolder), wo die erstellten Fotos gespeichert werden, und den Pfad zur PowerPoint-Datei(ptDateipfad). Die eigentliche Umwandlung von PowerPoint-Präsentationen in Fotos wird mit dieser Methode durchgeführt.
Anwendung pptApplication = new Anwendung()mit
wird eine neue Instanz des PowerPoint-Programms gestartet. Dies ermöglicht die programmatische Interaktion mit PowerPoint. Mit pptApplication.Presentations
öffnen wir die PowerPoint-Präsentationsdatei, die mit pptFilePath.Open()funktion. Diese Funktion gibt ein Presentation-Objekt zurück, das die geöffnete Präsentation darstellt. Wir ermitteln, ob der Ausgabeordner "
outputFolder" vorhanden ist. Falls nicht, verwenden wir die Methode
Directory.CreateDirectory()` zu erstellen.
Wir verwenden eine for-Schleife, um die einzelnen Folien der Präsentation zu durchlaufen. Die pptPresentation
liefert mit der Eigenschaft Slides.Count
die Gesamtzahl der Folien. Wir verwenden den Ausgabeordnerpfad und den Folienindex, um den Ausgabepfad für die Bilder der einzelnen Folien zu erstellen(als Slides{i}.png
). Als Nächstes exportieren wir die PowerPoint-Folie mit pptPresentation
als Bild(in diesem Beispiel im JPG-Bild, PNG-Bildformat) unter Verwendung des Export()funktion. Die Parameter sind das Bildformat("png"-Format) und Größe(breite: 1024, Höhe: 768). Zum Schluss verwenden wir
pptPresentation, um die Präsentation zu beenden. Schließen Sie() und verwenden Sie
pptApplication, um die PowerPoint-Sitzung zu beenden. Um die Systemressourcen entsprechend freizugeben, verwenden Sie
Quit()`.
Ein sehr beliebtes .NET Framework namensIronXL macht es einfacher, Excel-Dateien in C# zu bearbeiten. Mit seinen umfangreichen Funktionen zum Lesen, Erstellen und Bearbeiten von Excel-Dateien ist es ein flexibles Tool, das sich für eine breite Palette von Anwendungen eignet. Im Folgenden gehe ich auf einige der wichtigsten Funktionen von IronXL ein:
IronXL ermöglicht es, einzelne Zellen in Excel-Tabellen präzise zu bearbeiten. Programmatisch können die Entwickler Formatierungen, Stile, Formeln, Zellwerte und andere Merkmale festlegen.
Um mehr über die Dokumentation zu erfahren, lesen Sie bitte dieIronXL-Dokumentation.
Beginnen wir mit der Installation von IronXL über die NuGet Package Manager Console, bevor wir fortfahren:
Install-Package IronXL.Excel
Nach der Installation kann IronXL in unserem C#-Projekt verwendet werden.
Betrachten wir eine hypothetische Situation, in der wir IronXL verwenden möchten, um Daten aus einer Excel-Datei zu lesen.
Das folgende Codebeispiel veranschaulicht kurz, wie dies zu bewerkstelligen ist:
using IronXL;
using System;
class Program
{
static void Main(string [] args)
{
// Path to the Excel file
string excelFilePath = "sample.xlsx";
// Load the Excel file
WorkBook workbook = WorkBook.Load(excelFilePath);
// Access the first worksheet
WorkSheet worksheet = workbook.WorkSheets[0];
// Iterate through rows and columns to read data
foreach (var row in worksheet.Rows)
{
foreach (var cell in row)
{
Console.Write(cell.Value + "\t");
}
Console.WriteLine();
}
}
}
using IronXL;
using System;
class Program
{
static void Main(string [] args)
{
// Path to the Excel file
string excelFilePath = "sample.xlsx";
// Load the Excel file
WorkBook workbook = WorkBook.Load(excelFilePath);
// Access the first worksheet
WorkSheet worksheet = workbook.WorkSheets[0];
// Iterate through rows and columns to read data
foreach (var row in worksheet.Rows)
{
foreach (var cell in row)
{
Console.Write(cell.Value + "\t");
}
Console.WriteLine();
}
}
}
Imports Microsoft.VisualBasic
Imports IronXL
Imports System
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Path to the Excel file
Dim excelFilePath As String = "sample.xlsx"
' Load the Excel file
Dim workbook As WorkBook = WorkBook.Load(excelFilePath)
' Access the first worksheet
Dim worksheet As WorkSheet = workbook.WorkSheets(0)
' Iterate through rows and columns to read data
For Each row In worksheet.Rows
For Each cell In row
Console.Write(cell.Value & vbTab)
Next cell
Console.WriteLine()
Next row
End Sub
End Class
Zunächst fügen wir die erforderlichen Namespaces ein. Die von der IronXL-Bibliothek angebotenen Klassen und Methoden sind im IronXL-Namensraum enthalten. Der Pfad zu der Excel-Datei, die gelesen werden soll(sample.xlsx) angegeben ist. WorkBook wird zum Laden der Excel-Datei verwendet. Die Excel-Arbeitsmappe wird durch ein WorkBook-Objekt dargestellt, das von der Funktion Load zurückgegeben wird()** Funktion. Mit der Arbeitsmappe können wir auf das erste Arbeitsblatt mit workbook.WorkSheets[0]
. Mit verschachtelten foreach-Schleifen werden die Zeilen und Spalten des Arbeitsblatts durchlaufen. Wir geben den Wert jeder Zelle auf der Konsole aus.
Um mehr über den Code zu erfahren, besuchen SieIronXL Read Excel Beispiele.
In vielen Softwareanwendungen ist es erforderlich, PowerPoint-Präsentationen mit C# in Fotos zu konvertieren. Ob Sie den Microsoft.Office.Interop.PowerPoint-Namensraum verwenden oder nicht, das Verfahren kann relativ schnell abgeschlossen werden. Die Codebeispiele in diesem Artikel helfen Ihnen dabei, die Konvertierung von PowerPoint in Bilder in Ihre C#-Anwendungen zu integrieren und so eine Fülle von Möglichkeiten für die Informationsverteilung und -änderung zu schaffen.
Ohne dass Excel auf dem Zielrechner installiert sein muss oder von der Interop-Bibliothek abhängt,IronXL bietet eine schnelle und effektive Möglichkeit, Excel-Operationen in C# auszuführen. Entwickler, die IronXL für den Umgang mit Excel-Daten in ihren C#-Anwendungen verwenden, werden es als nützlich empfinden, da es mit seiner benutzerfreundlichen API und seinem umfangreichen Funktionsumfang Vorgänge wie das Lesen, Schreiben und Ändern von Excel-Dateien rationalisiert. IronXL bietet eine zuverlässige Lösung, die die Effizienz und Anpassungsfähigkeit in Excel-bezogenen Entwicklungsprojekten erhöht, unabhängig davon, ob Sie Berichte erstellen, Daten verarbeiten oder Tabellenkalkulationsaufgaben automatisieren.
Akostenlose Testversion von IronXL ist verfügbar und bietet umfangreiche Funktionen und Unterstützung. Besuchen Sie dieIronXL-Lizenzierungsinformationen für umfassende und aktuelle Informationen zur Lizenzvergabe. Besuchen Sie dieIron Software Website um mehr über die Produkte von Iron Software zu erfahren.
9 .NET API-Produkte für Ihre Bürodokumente