OLE‑объект
Contents
[
Hide
]
Эта статья демонстрирует встраивание файла в виде OLE‑объекта и обновление его данных с помощью Aspose.Slides for Node.js via Java.
Добавить OLE‑объект
Встроить PDF‑файл в презентацию.
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();
}
}
Получить OLE‑объект
Получить первый фрейм OLE‑объекта на слайде.
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();
}
}
Удалить OLE‑объект
Удалить встроенный OLE‑объект со слайда.
function removeOleObject() {
let presentation = new aspose.slides.Presentation("ole_object.pptx");
try {
let slide = presentation.getSlides().get_Item(0);
// Предполагая, что первая фигура является рамкой OLE‑объекта.
let oleFrame = slide.getShapes().get_Item(0);
slide.getShapes().remove(oleFrame);
presentation.save("ole_object_removed.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
}
Обновить данные OLE‑объекта
Заменить данные, встроенные в существующий OLE‑объект.
function updateOleObject() {
let presentation = new aspose.slides.Presentation("ole_object.pptx");
try {
let slide = presentation.getSlides().get_Item(0);
// Предполагая, что первая фигура является рамкой OLE‑объекта.
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();
}
}