OLE staat voor Object Linking and Embedding. Het wordt geleverd door Microsoft en stelt u in staat documenten te maken en te bewerken die items of objecten bevatten die door verschillende toepassingen zijn gemaakt.
U kunt bijvoorbeeld spreadsheets, afbeeldingen en geluidsfragmenten insluiten als OLE-objecten in een Word-document. U kunt deze OLE-objecten in het Word-document gebruiken en hoeft u zich geen zorgen te maken dat u steeds weer naar meerdere toepassingen moet overschakelen. U kunt dergelijke objecten programmatisch insluiten of invoegen met OLE in C#.
In dit artikel wordt uitgelegd hoe u het volgende kunt doen:
- OLE-object invoegen in MS Word-documenten
- OLE-object in Excel-spreadsheets invoegen
- OLE-object toevoegen aan PowerPoint-presentaties
Stappen in dit artikel en codevoorbeelden gebruiken GroupDocs.Merger for .NET. Zorg er dus voor dat u de API installeert via een van de volgende methoden:
- Installeer met behulp van NuGet Pakketbeheer.
- Downloaden the DLL and reference it into the project.
PDF invoegen als OLE-object in MS Word-document in C#
Hier volgen de stappen en een C#-codevoorbeeld om te laten zien hoe u een PDF-bestand als een OLE-object in een Word-document kunt insluiten:
- Instantiseer de OleWordProcessingOptions met insluitopties en het document dat u wilt insluiten in een Word-document.
- Maak nu een instantie van het Merger-object met het pad of de stroom van het brondocument in Word.
- Roep de methode ImportDocument aan en geef het object van de OLE-tekstverwerkingsopties door die in stap 1 zijn ingesteld.
- Dat is het. Roep de methode Opslaan aan om het resulterende Word-document op te halen met een PDF-document als OLE-object.
// 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");
}
Word-document invoegen als OLE-object in Excel-spreadsheet in C#
We kunnen OLE-objecten insluiten in Excel-spreadsheets. CSharp-codevoorbeeld en stappen hieronder waarin wordt uitgelegd hoe u een Word-document als een OLE-object aan een Excel-spreadsheet kunt toevoegen:
- Instantiseer de OleSpreadsheetOptions met insluitopties en het document dat u wilt insluiten in een Excel-spreadsheet.
- Maak nu een instantie van het Merger-object met het bronspreadsheetpad of -stream.
- Roep nu de methode ImportDocument aan en geef het object van de OLE-spreadsheetopties door die in stap 1 zijn ingesteld.
- Roep ten slotte de methode Opslaan aan om de resulterende Excel-spreadsheet te krijgen met een Word-document als een OLE-object.
// 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-object toevoegen aan PowerPoint-presentatie in C#
Op dezelfde manier voegen we hier objecten in een PowerPoint-presentatie in.
- Instantiseer de OlePresentationOptions met insluitopties en het document dat u wilt insluiten in een PowerPoint-presentatie.
- Maak nu een instantie van het Merger-object met het bronpresentatiepad of de stream.
- Roep de methode ImportDocument aan en geef het object door van de OLE-presentatieopties die zijn ingesteld in stap 1.
- Roep ten slotte de methode Opslaan aan om de resulterende PowerPoint-presentatie te krijgen met een PDF-document als een OLE-object.
// 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");
}
Conclusie
We hebben besproken hoe gemakkelijk en snel we OLE-objecten programmatisch kunnen invoegen in Word-, Excel- of PowerPoint-documenten in C#. Er is slechts een klein verschil in code voor elk doel, dwz verschillende OLE-optieklassen en de bijbehorende opties voor elk bestandsformaat:
- OleWordProcessingOpties om OLE-objecten in te sluiten in een Word-document.
- OleSpreadsheetOpties om OLE-objecten in Excel-spreadsheets in te sluiten.
- OlePresentationOpties om OLE-objecten in PowerPoint-presentatie in te sluiten.
Meer informatie over de API vindt u in de documentatie of Let’s talk more @ Free Support Forum.