在 C++ 中從簡報擷取 Flash 物件

概述

本文說明如何使用 Aspose.Slides 從簡報中擷取 Flash 物件。它展示了如何在投影片的控制項集合中依名稱找到 Flash 控制項,並處理嵌入的 SWF 物件資料。

從簡報中擷取 Flash 物件

Aspose.Slides for C++ 提供了從簡報中擷取 Flash 物件的功能。您可以依名稱存取 Flash 控制項,將其從簡報中擷取,並儲存其 SWF 物件資料。

auto pres = System::MakeObject<Presentation>(u"withFlash.pptm");
auto controls = pres->get_Slides()->idx_get(0)->get_Controls();
System::SharedPtr<Control> flashControl;
for (const auto& control : controls)
{
    if (control->get_Name() == u"ShockwaveFlash1")
    {
        flashControl = System::ExplicitCast<Control>(control);
    }
}

常見問題

在擷取 Flash 內容時支持哪種簡報格式?

Aspose.Slides 支持 主要的 PowerPoint 格式,例如 PPT 與 PPTX,因為它能載入這些容器並存取其控制項,包括與 Flash 相關的 ActiveX 元件。

我可以將含有 Flash 的簡報轉換為 HTML5 並保留 Flash 互動性嗎?

不會。Aspose.Slides 不會執行 SWF 內容或轉換其互動性。雖然支援匯出至 HTML/HTML5,但由於瀏覽器已停止支援,Flash 無法在現代瀏覽器中播放。建議的做法是在匯出前將 Flash 替換為影片或 HTML5 動畫等替代方案。

從安全性的觀點來看,Aspose.Slides 在讀取簡報時會執行 SWF 檔案嗎?

不會。Aspose.Slides 將 Flash 視為嵌入檔案中的二進位資料,處理過程中不會執行 SWF 內容。

我該如何處理同時包含 Flash 與其他透過 OLE 嵌入的檔案的簡報?

Aspose.Slides 支援 提取嵌入的 OLE 物件,因此您可以一次處理所有相關的嵌入內容,同時處理 Flash 控制項與其他 OLE 嵌入的文件。