OLE je zkratka pro Object Linking and Embedding. Poskytuje jej společnost Microsoft a umožňuje vytvářet a upravovat dokumenty obsahující položky nebo objekty, které jsou vytvářeny různými aplikacemi.
Například můžete vložit tabulky, obrázky a zvukové klipy jako objekty OLE do dokumentu aplikace Word. Tyto objekty OLE můžete použít v dokumentu aplikace Word a nemusíte se starat o opakované přepínání na více aplikací. Takové objekty můžete vložit nebo vložit programově pomocí OLE v C#.
Tento článek vás provede tím, jak můžete:
- Vložte OLE objekt do dokumentů MS Word
- Vložit objekt OLE do tabulek aplikace Excel
- Přidejte objekt OLE do prezentací PowerPoint
Kroky v tomto článku a ukázky kódu používají GroupDocs.Merger for .NET. Ujistěte se tedy, že nainstalujete API některým z následujících způsobů:
Vložit PDF jako OLE objekt do dokumentu MS Word v C#
Zde jsou kroky a ukázka kódu C#, které ukazují, jak vložit soubor PDF do dokumentu aplikace Word jako objekt OLE:
- Vytvořte instanci OleWordProcessingOptions s možnostmi vkládání a dokumentem, který chcete vložit do dokumentu aplikace Word.
- Nyní vytvořte instanci objektu Merger se zdrojovou cestou dokumentu Word nebo streamem.
- Zavolejte metodu ImportDocument a předejte objekt možností zpracování textu OLE, které jsou nastaveny v kroku 1.
- A je to. Voláním metody Save získáte výsledný dokument aplikace Word, který má jako objekt OLE dokument PDF.
// 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");
}
Vložit dokument Word jako objekt OLE do tabulky Excel v C#
Objekty OLE můžeme vložit do tabulek Excelu. Ukázka kódu CSharp a níže uvedené kroky vysvětlující, jak přidat dokument aplikace Word do tabulky aplikace Excel jako objekt OLE:
- Vytvořte instanci OleSpreadsheetOptions s možnostmi vkládání a dokumentem, který chcete vložit do tabulky aplikace Excel.
- Nyní vytvořte instanci objektu Merger se zdrojovou cestou tabulky nebo streamem.
- Nyní zavolejte metodu ImportDocument a předejte objekt Možnosti tabulky OLE, které se nastavují v kroku 1.
- Nakonec zavolejte metodu Save, abyste získali výslednou tabulku aplikace Excel, která má jako objekt OLE dokument aplikace Word.
// 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");
}
Přidat PDF jako OLE objekt do PowerPointové prezentace v C#
Podobně zde vkládáme objekty do powerpointové prezentace.
- Vytvořte instanci OlePresentationOptions s možnostmi vkládání a dokumentem, který chcete vložit do prezentace PowerPoint.
- Nyní vytvořte instanci objektu Merger se zdrojovou prezentační cestou nebo streamem.
- Zavolejte metodu ImportDocument a předejte objekt možností prezentace OLE, které se nastavují v kroku 1.
- Nakonec zavolejte metodu Save, abyste získali výslednou prezentaci PowerPoint s dokumentem PDF jako objektem OLE.
// 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");
}
Závěr
Diskutovali jsme o tom, jak snadno a rychle můžeme vkládat objekty OLE do dokumentů Word, Excel nebo PowerPoint programově v C#. Existuje pouze malý rozdíl v kódu pro každý cíl, tj. různé třídy voleb OLE a jejich možnosti pro každý formát souboru:
- OleWordProcessingOptions pro vložení objektů OLE do dokumentu aplikace Word.
- OleSpreadsheetMožnosti pro vložení objektů OLE do tabulek aplikace Excel.
- OlePresentationOptions pro vložení objektů OLE do prezentace PowerPoint.
Více o API se můžete dozvědět z dokumentace nebo Pojďme si povídat více @ Free Support Forum.