OLE-объект
Contents
[
Hide
]
В этой статье демонстрируется встраивание файла как OLE-объекта и обновление его данных с использованием Aspose.Slides for Java.
Добавить OLE-объект
Встроить PDF‑файл в презентацию.
static void addOleObject() throws IOException {
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
byte[] pdfData = Files.readAllBytes(Paths.get("doc.pdf"));
IOleEmbeddedDataInfo dataInfo = new OleEmbeddedDataInfo(pdfData, "pdf");
IOleObjectFrame oleFrame = slide.getShapes().addOleObjectFrame(20, 20, 50, 50, dataInfo);
} finally {
presentation.dispose();
}
}
Доступ к OLE-объекту
Получить первый кадр OLE-объекта на слайде.
static void accessOleObject() throws IOException {
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
byte[] pdfData = Files.readAllBytes(Paths.get("doc.pdf"));
IOleEmbeddedDataInfo dataInfo = new OleEmbeddedDataInfo(pdfData, "pdf");
IOleObjectFrame oleFrame = slide.getShapes().addOleObjectFrame(20, 20, 50, 50, dataInfo);
IOleObjectFrame firstOleFrame = null;
for (IShape shape : slide.getShapes()) {
if (shape instanceof IOleObjectFrame) {
firstOleFrame = (IOleObjectFrame) shape;
break;
}
}
} finally {
presentation.dispose();
}
}
Удалить OLE-объект
Удалить встроенный OLE-объект со слайда.
static void removeOleObject() throws IOException {
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
byte[] pdfData = Files.readAllBytes(Paths.get("doc.pdf"));
IOleEmbeddedDataInfo dataInfo = new OleEmbeddedDataInfo(pdfData, "pdf");
IOleObjectFrame oleFrame = slide.getShapes().addOleObjectFrame(20, 20, 50, 50, dataInfo);
slide.getShapes().remove(oleFrame);
} finally {
presentation.dispose();
}
}
Обновить данные OLE-объекта
Заменить данные, встроенные в существующий OLE-объект.
static void updateOleObjectData() throws IOException {
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
byte[] pdfData = Files.readAllBytes(Paths.get("doc.pdf"));
OleEmbeddedDataInfo dataInfo = new OleEmbeddedDataInfo(pdfData, "pdf");
IOleObjectFrame oleFrame = slide.getShapes().addOleObjectFrame(20, 20, 50, 50, dataInfo);
byte[] newData = Files.readAllBytes(Paths.get("Picture.png"));
OleEmbeddedDataInfo newDataInfo = new OleEmbeddedDataInfo(newData, "png");
oleFrame.setEmbeddedData(newDataInfo);
} finally {
presentation.dispose();
}
}