Ole对象
Contents
[
Hide
]
演示如何将文件嵌入为 OLE 对象并使用 Aspose.Slides for PHP via Java 更新其数据。
添加 OLE 对象
将 PDF 文件嵌入到演示文稿中。
function addOleObject() {
$presentation = new Presentation();
try {
$slide = $presentation->getSlides()->get_Item(0);
$pdfData = new OleEmbeddedDataInfo(file_get_contents("doc.pdf"), "pdf");
$oleFrame = $slide->getShapes()->addOleObjectFrame(20, 20, 50, 50, $pdfData);
$presentation->save("ole_object.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
}
访问 OLE 对象
获取幻灯片上的第一个 OLE 对象框架。
function accessOleObject() {
$presentation = new Presentation("ole_object.pptx");
try {
$slide = $presentation->getSlides()->get_Item(0);
// 访问幻灯片上的第一个 OLE 框架。
$firstOleFrame = null;
$shapeCount = java_values($slide->getShapes()->size());
for ($index = 0; $index < $shapeCount; $index++) {
$shape = $slide->getShapes()->get_Item($index);
if (java_instanceof($shape, new JavaClass("com.aspose.slides.OleObjectFrame"))) {
$firstOleFrame = $shape;
break;
}
}
} finally {
$presentation->dispose();
}
}
删除 OLE 对象
从幻灯片中删除嵌入的 OLE 对象。
function removeOleObject() {
$presentation = new Presentation("ole_object.pptx");
try {
$slide = $presentation->getSlides()->get_Item(0);
// 假设幻灯片上的第一个形状是 OLE 框架。
$oleFrame = $slide->getShapes()->get_Item(0);
$slide->getShapes()->remove($oleFrame);
$presentation->save("ole_object_removed.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
}
更新 OLE 对象数据
替换现有 OLE 对象中嵌入的数据。
function updateOleObjectData() {
$presentation = new Presentation("ole_object.pptx");
try {
$slide = $presentation->getSlides()->get_Item(0);
// 假设幻灯片上的第一个形状是 OLE 框架。
$oleFrame = $slide->getShapes()->get_Item(0);
$newData = new OleEmbeddedDataInfo(file_get_contents("picture.png"), "png");
$oleFrame->setEmbeddedData($newData);
$presentation->save("ole_object_updated.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
}