OLE Object
Contents
[
Hide
]
This article demonstrates embedding a file as an OLE object and updating its data using Aspose.Slides for Node.js via Java.
Add an OLE Object
Embed a PDF file into a presentation.
function addOleObject() {
let presentation = new aspose.slides.Presentation();
try {
let slide = presentation.getSlides().get_Item(0);
let pdfStream = fs.readFileSync("doc.pdf");
let pdfData = java.newArray("byte", Array.from(pdfStream));
let dataInfo = new aspose.slides.OleEmbeddedDataInfo(pdfData, "pdf");
let oleFrame = slide.getShapes().addOleObjectFrame(20, 20, 50, 50, dataInfo);
presentation.save("ole_object.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
}
Access an OLE Object
Retrieve the first OLE object frame on a slide.
function accessOleObject() {
let presentation = new aspose.slides.Presentation("ole_object.pptx");
try {
let slide = presentation.getSlides().get_Item(0);
let firstOleFrame = null;
for (let i = 0; i < slide.getShapes().size(); i++) {
let shape = slide.getShapes().get_Item(i);
if (java.instanceOf(shape, "com.aspose.slides.IOleObjectFrame")) {
firstOleFrame = shape;
break;
}
}
} finally {
presentation.dispose();
}
}
Remove an OLE Object
Delete an embedded OLE object from the slide.
function removeOleObject() {
let presentation = new aspose.slides.Presentation("ole_object.pptx");
try {
let slide = presentation.getSlides().get_Item(0);
// Assuming the first shape is the OLE object frame.
let oleFrame = slide.getShapes().get_Item(0);
slide.getShapes().remove(oleFrame);
presentation.save("ole_object_removed.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
}
Update OLE Object Data
Replace the data embedded in an existing OLE object.
function updateOleObject() {
let presentation = new aspose.slides.Presentation("ole_object.pptx");
try {
let slide = presentation.getSlides().get_Item(0);
// Assuming the first shape is the OLE object frame.
let oleFrame = slide.getShapes().get_Item(0);
let dataStream = fs.readFileSync("picture.png");
let newData = java.newArray("byte", Array.from(dataStream));
let dataInfo = new aspose.slides.OleEmbeddedDataInfo(newData, "png");
oleFrame.setEmbeddedData(dataInfo);
presentation.save("ole_object_updated.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
}