OLE steht für Object Linking and Embedding. Es wird von Microsoft bereitgestellt und ermöglicht Ihnen das Erstellen und Bearbeiten von Dokumenten, die Elemente oder Objekte enthalten, die von verschiedenen Anwendungen erstellt wurden.
Beispielsweise können Sie Tabellenkalkulationen, Bilder und Soundclips als OLE-Objekte in ein Word-Dokument einbetten. Sie können diese OLE-Objekte im Word-Dokument verwenden und brauchen sich keine Gedanken darüber zu machen, immer wieder zu mehreren Anwendungen zu wechseln. Sie können solche Objekte programmgesteuert mit OLE in C# einbetten oder einfügen.
In diesem Artikel erfahren Sie, wie Sie:
- OLE-Objekt in MS Word-Dokumente einfügen
- OLE-Objekt in Excel-Tabellen einfügen
- OLE-Objekt zu PowerPoint-Präsentationen hinzufügen
Schritte in diesem Artikel und Codebeispiele verwenden GroupDocs.Merger for .NET. Stellen Sie daher sicher, dass Sie die API mit einer der folgenden Methoden installieren:
- Installieren Sie mit NuGet Package Manager.
- Laden Sie die DLL herunter und referenzieren Sie sie im Projekt.
PDF als OLE-Objekt in MS Word-Dokument in C# einfügen
Hier sind die Schritte und das C#-Codebeispiel, um zu zeigen, wie eine PDF-Datei als OLE-Objekt in ein Word-Dokument eingebettet wird:
- Instanziieren Sie die OleWordProcessingOptions mit Einbettungsoptionen und dem Dokument, das in ein Word-Dokument eingebettet werden soll.
- Instanziieren Sie nun das Objekt Merger mit dem Pfad oder Stream des Quell-Word-Dokuments.
- Rufen Sie die Methode ImportDocument auf und übergeben Sie das Objekt der OLE-Textverarbeitungsoptionen, die in Schritt 1 festgelegt wurden.
- Das ist es. Rufen Sie die Methode Save auf, um das resultierende Word-Dokument mit einem PDF-Dokument als OLE-Objekt zu erhalten.
// Embed a PDF file into a Word document as an OLE Object in C#
int pageNumber = 2;
OleWordProcessingOptions oleWordProcessingOptions = new OleWordProcessingOptions(@"embedded-doc.pdf", pageNumber)
{
Width = 300, // Just setting the height & width, you have more options.
Height = 300
};
// Use Merger class to start with source Word document and embed PDF as OLE object.
using (Merger merger = new Merger(@"source-doc.docx"))
{
merger.ImportDocument(oleWordProcessingOptions);
merger.Save(@"word-document-with-OLE.docx");
}
Einfügen eines Word-Dokuments als OLE-Objekt in eine Excel-Tabelle in C#
Wir können OLE-Objekte in Excel-Tabellen einbetten. CSharp-Codebeispiel und Schritte unten, die erklären, wie man ein Word-Dokument als OLE-Objekt in eine Excel-Tabelle einfügt:
- Instanziieren Sie die OleSpreadsheetOptions mit Einbettungsoptionen und dem Dokument, das in eine Excel-Tabelle eingebettet werden soll.
- Instanziieren Sie nun das Objekt Merger mit dem source Spreadsheet-Pfad oder -Stream.
- Rufen Sie nun die Methode ImportDocument auf und übergeben Sie das Objekt von OLE Spreadsheet Options, das in Schritt 1 festgelegt wurde.
- Rufen Sie schließlich die Methode Save auf, um die resultierende Excel-Tabelle mit einem Word-Dokument als OLE-Objekt zu erhalten.
// Embed a Word file into an Excel Spreadsheet as an OLE Object in C#
int pageNumber = 2;
OleSpreadsheetOptions oleSpreadsheetOptions = new OleSpreadsheetOptions(@"embedded-doc.docx", pageNumber)
{
RowIndex = 2, // Setting the Row & height Index, you have more options.
ColumnIndex = 2
};
// Using Merger class with source spreadsheet and embedding a Word document as an OLE object.
using (Merger merger = new Merger(@"sample-doc.xlsx"))
{
merger.ImportDocument(oleSpreadsheetOptions);
merger.Save(@"excel-sheet-with-ole.xlsx");
}
PDF als OLE-Objekt zu PowerPoint-Präsentation in C# hinzufügen
In ähnlicher Weise fügen wir hier Objekte in eine PowerPoint-Präsentation ein.
- Instanziieren Sie die OlePresentationOptions mit Einbettungsoptionen und dem Dokument, das in eine PowerPoint-Präsentation eingebettet werden soll.
- Instanziieren Sie nun das Objekt Merger mit dem Pfad oder Stream Quellpräsentation.
- Rufen Sie die Methode ImportDocument auf und übergeben Sie das Objekt der OLE-Präsentationsoptionen, die in Schritt 1 festgelegt wurden.
- Rufen Sie schließlich die Methode Save auf, um die resultierende PowerPoint-Präsentation mit einem PDF-Dokument als OLE-Objekt zu erhalten.
// Embed a PDF file into an Excel Spreadsheet as an OLE Object in C#
int pageNumber = 2;
OlePresentationOptions olePresentationOptions = new OlePresentationOptions(@"embedded.pdf", pageNumber)
{
X = 10, // Setting only X & Y coordinates, you can customize more.
Y = 10
};
// Using Merger class to embed a PDF file as an OLE object in the PowerPoint presentation.
using (Merger merger = new Merger(@"sample-presentation.ppt"))
{
merger.ImportDocument(olePresentationOptions);
merger.Save(@"powerpoint-presentation-with-ole.ppt");
}
Fazit
Wir haben besprochen, wie einfach und schnell wir OLE-Objekte programmgesteuert in C# in Word-, Excel- oder PowerPoint-Dokumente einfügen können. Es gibt nur einen kleinen Unterschied im Code für jedes Ziel, dh unterschiedliche OLE-Optionsklassen und ihre Optionen für jedes Dateiformat:
- OleWordProcessingOptions zum Einbetten von OLE-Objekten in ein Word-Dokument.
- OleSpreadsheetOptions zum Einbetten von OLE-Objekten in Excel-Tabellen.
- OlePresentationOptions zum Einbetten von OLE-Objekten in PowerPoint-Präsentation.
Weitere Informationen zur API finden Sie in der Dokumentation oder im Let’s talk more @ [Free Support Forum].]22