在 C++ 應用程序中將 MHTML 渲染到 XAML

在您的 C++ 應用程序中將 MHTML 轉換為 XAML,而無需使用 Microsoft® PowerPoint

 

您是一名 C++ 開發人員,希望在您的 C++ 應用程序中添加集成 MHTML 到 XAML 轉換功能嗎?您可以通過兩個簡單的步驟來完成。您可以使用 Aspose.PDF for C++ 將 MHTML 導出到 PPTX。其次,通過使用 Aspose.Slides for C++ ,您可以將PPTX轉換為XAML。這兩個 API 都屬於 Aspose.Total for C++ 包。

將 MHTML 導出為 XAML 的 C++ API

  1. Document 類參考打開MHTML文件
  2. 使用 Save 方法函數將MHTML轉換為PPTX
  3. Presentation 類參考加載PPTX文檔
  4. 使用 Save 成員函數將文檔保存為 XAML 格式,並將 Xaml 設置為 SaveFormat

轉換要求

從命令行安裝為 nuget install Aspose.Total.Cpp 或通過 Visual Studio 的包管理器控制台使用 Install-Package Aspose.Total.Cpp

或者,從 下載 獲取 ZIP 文件中的離線 MSI 安裝程序或 DLL。

// load MHTML file with an instance of Document class
auto doc = MakeObject<Document>(u"template.mhtml");
// save MHTML as PPTX format 
doc->Save(u"PptxOutput.pptx", SaveFormat::Pptx);
// instantiate a Presentation object that represents a PPTX file
SharedPtr<Presentation> prs = MakeObject<Presentation>(u"PptxOutput.pptx");
// save the presentation as Xaml format
prs->Save(u"output.xaml", Aspose::Slides::Export::SaveFormat::Xaml);  

通過 C++ 更改 MHTML 文檔的密碼

在將 MHTML 渲染為 XAML 的過程中,您可以打開受密碼保護的 MHTML 並更改其密碼。要更改 MHTML 文件的密碼,您必須知道該文檔的所有者密碼。您可以通過指定所有者密碼並使用 ChangePasswords 方法更改密碼來使用 Aspose.PDF for C++ 加載受密碼保護的 PDF 文檔。

// load an existing MHTML Document
auto doc = MakeObject<Document>(L"input.mhtml", L"owner");
// change password of MHTML Document
doc->ChangePasswords(L"owner", L"newuser", L"newuser");
// save the document
doc->Save(L"output.Doc");

通過 C++ 在 XAML 文件中添加來自 Web 的圖像

將 MHTML 轉換為 XAML 後,您還可以將 Web 中的圖像添加到輸出文檔中。 Aspose.Slides for C++ 支持對以下流行格式的圖像進行操作:JPEG、PNG、BMP、GIF 等。您可以將計算機上的一個或多個圖像添加到演示文稿的幻燈片中。此 C++ 示例代碼向您展示如何將圖像添加到 XAML 文件

// instantiate a Presentation object that represents a XAML file
auto pres = System::MakeObject<Presentation>("output.xaml");
// get slide
auto slide = pres->get_Slides()->idx_get(0);
// initialize Web Client    
auto webClient = System::MakeObject<WebClient>();
// get image data
auto imageData = webClient->DownloadData(System::MakeObject<Uri>(u"[REPLACE WITH URL]"));
// add image
auto image = pres->get_Images()->AddImage(imageData);
// add picture frame
slide->get_Shapes()->AddPictureFrame(ShapeType::Rectangle, 10.0f, 10.0f, 100.0f, 100.0f, image);
// save updated file
pres->Save(u"updated.xaml", SaveFormat::Xaml);

使用 C++ 探索 MHTML 轉換選項

將 MHTML 轉換為 ODP (OpenDocument 演示文稿格式)
將 MHTML 轉換為 OTP (OpenDocument 標準格式)
將 MHTML 轉換為 POT (Microsoft PowerPoint 模板文件)
將 MHTML 轉換為 POTM (微軟 PowerPoint 模板文件)
將 MHTML 轉換為 POTX (Microsoft PowerPoint 模板演示)
將 MHTML 轉換為 PPT (PowerPoint演示文稿)
將 MHTML 轉換為 PPS (PowerPoint 幻燈片放映)
將 MHTML 轉換為 PPSM (啟用宏的幻燈片放映)
將 MHTML 轉換為 PPSX (PowerPoint 幻燈片放映)
將 MHTML 轉換為 PPT (PowerPoint演示文稿)
將 MHTML 轉換為 PPTM (啟用宏的演示文稿文件)
將 MHTML 轉換為 SWF (衝擊波動畫)
將 MHTML 轉換為 DOCM (Microsoft Word 2007 宏文件)
將 MHTML 轉換為 DOT (Microsoft Word 模板文件)
將 MHTML 轉換為 DOTM (Microsoft Word 2007+ 模板文件)
將 MHTML 轉換為 DOTX (微軟 Word 模板文件)
將 MHTML 轉換為 FLATOPC (Microsoft Word 2003 文字處理ML)
將 MHTML 轉換為 GIF (圖形交換格式)
將 MHTML 轉換為 MARKDOWN (輕量級標記語言)
將 MHTML 轉換為 ODT (OpenDocument 文本文件格式)
將 MHTML 轉換為 OTT (打開文檔模板)
將 MHTML 轉換為 PCL (打印機命令語言)
將 MHTML 轉換為 PS (後記文件)
將 MHTML 轉換為 RTF (富文本格式)
將 MHTML 轉換為 WORDML (Microsoft Word 2003 文字處理ML)
將 MHTML 轉換為 XAMLFLOW (微軟的 Power Automate)
將 MHTML 轉換為 CSV (逗號分隔值)
將 MHTML 轉換為 DIF (數據交換格式)
將 MHTML 轉換為 CSV (逗號分隔值)
將 MHTML 轉換為 FODS (OpenDocument 平面 XML 電子表格)
將 MHTML 轉換為 MD (降價語言)
將 MHTML 轉換為 ODS (OpenDocument電子表格)
將 MHTML 轉換為 SXC (StarSuite Calc 電子表格)
將 MHTML 轉換為 TSV (製表符分隔值)
將 MHTML 轉換為 XLAM (Excel 啟用宏的加載項)
將 MHTML 轉換為 XLSB (Excel 二進制工作簿)
將 MHTML 轉換為 XLSM (啟用宏的電子表格)
將 MHTML 轉換為 XLT (Excel 97 - 2003 模板)
將 MHTML 轉換為 XLTM (Excel 啟用宏的模板)

什麼是 MHTML 文件格式

MHTML 是 MIME HTML 的縮寫,是一種將 HTML 代碼及其相關資源組合到單個文件中的文件格式。它代表多用途 Internet 郵件擴展 HTML。 MHTML 文件通常用於將網頁(包括其所有內容,例如圖像、CSS 樣式表和 JavaScript)保存到單個文件中。

MHTML 文件通常是在用戶保存網頁以供離線使用時由網絡瀏覽器創建的查看或存檔目的。通過將所有必要的資源捆綁到一個文件中,MHTML 確保即使沒有互聯網連接或無法訪問原始服務器,也可以準確地查看和呈現網頁。

MHTML 格式遵循 MIME 標準,用於通過 Internet 編碼和交換各種類型的數據。它使用多部分 MIME 編碼將 HTML 代碼和相關資源打包到一個文件中。該文件通常具有 .mht 或 .mhtml 文件擴展名。

MHTML 文件可以通過支持該格式的網絡瀏覽器打開和查看,例如 Internet Explorer、Microsoft Edge 和 Opera。一些文本編輯器和專用軟件還提供打開和編輯 MHTML 文件的功能。

MHTML 格式在便攜性和便利性方面具有優勢,因為它允許用戶將網頁保存和共享為單個文件,確保頁面佈局、格式和鏈接資源的保存。然而,值得注意的是,MHTML 不像 HTML 或 PDF 等其他網絡格式那樣廣泛使用,並且兼容性可能因不同的軟件和平台而異。

什麼是 XAML 文件格式

XAML(Extensible Application Markup Language)是微軟開發的一種基於XML的語言,用於初始化對象和定義結構化值。它廣泛用於 Microsoft 的 WPF(Windows Presentation Foundation)技術中,用於設計和構建高級用戶界面。

使用 XAML,可以創建範圍廣泛的對象,包括用戶界面元素,例如按鈕、文本框和媒體元素。此外,還可以使用 XAML 定義畫筆和幾何圖形等非用戶界面對象。

通常,XAML 被編譯成可由 XAML 處理器執行的二進制格式。 XAML 處理器可以是獨立的應用程序,如 Microsoft 的 Expression Blend 工具,也可以集成到另一個應用程序中,如 Microsoft 的 Visual Studio IDE。當與 WPF 結合使用時,XAML 文件通常被編譯成稱為 BAML(二進制應用程序標記語言)的二進制格式。 BAML 是一種更高效的格式,用於存儲和處理基於 XAML 的用戶界面元素。

雖然 XAML 文件通常被編譯成二進制格式,但它們也可以使用 XML(可擴展標記語言)以基於文本的格式存儲).由於 XML 的靈活性,可以使用任何文本編輯器編輯基於 XML 的 XAML 文件。但是,請務必注意,與對應的二進製文件相比,基於 XML 的 XAML 文件往往更大,處理時間可能更長。