Aspose.Total for C++ 包含強大的文件自動化 API,允許在使用其中兩個 API 時自動進行 RTF 到 PPSM 的轉換。使用 Aspose.Words for C++ 加載您的 RTF 並將其轉換為 HTML,然後通過 PowerPoint 操作 C++ API Aspose.Slides for C++ 加載 HTML 創建一個新的演示文稿,並將其保存為 PPSM。
C++ 上的 RTF 到 PPSM 轉換
- 用 Rtfument 類參考打開RTF文件
- 使用 Save 成員函數將 RTF 轉換為 HTML
- 始化一個新的 Presentation 對象
- 在你的幻燈片中添加一個自選圖形,並在其中添加 AddTextFrame
- 加載 HTML 內容並將其寫入您的 Presentation 文件中
- 使用 Save 方法將文檔保存為 PPSM 格式,並將 Ppsm 設置為 SaveFormat
轉換要求
從命令行安裝為 nuget install Aspose.Total.Cpp
或通過 Visual Studio 的包管理器控制台使用 Install-Package Aspose.Total.Cpp
。
或者,從 下載 獲取 ZIP 文件中的離線 MSI 安裝程序或 DLL。
// load RTF file with an instance of Rtfument
Rtfument rtfument = new Rtfument("template.rtf");
System::SharedPtr<Rtfument> rtf = System::MakeObject<Rtfument>(u"sourceFile.rtf");
// save the rtfument in HTML file format
rtf->Save(u"HtmlOutput.HTML");
// load the desired the presentation
SharedPtr<Presentation> pres = MakeObject<Presentation>();
// access first slide
SharedPtr<ISlide> sld = pres->get_Slides()->idx_get(0);
// add an AutoShape of Rectangle type
SharedPtr<IAutoShape> ashp = sld->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 10, 10, 700, 500);
// reset default fill color
ashp->get_FillFormat()->set_FillType(FillType::NoFill);
// add TextFrame to the Rectangle
ashp->AddTextFrame(u" ");
// access the text frame
SharedPtr<ITextFrame> txtFrame = ashp->get_TextFrame();
// get Paragraphs collection
SharedPtr<Aspose::Slides::IParagraphCollection>ParaCollection = txtFrame->get_Paragraphs();
// clear all paragraphs in added text frame
ParaCollection->Clear();
// load the HTML file using stream reader
SharedPtr<System::IO::StreamReader> tr = MakeObject<System::IO::StreamReader>(HtmlOutput.HTML);
// add text from HTML stream reader in text frame
ParaCollection->AddFromHtml(tr->ReadToEnd());
// save presentation as Ppsm
pres->Save(output.ppsm, Aspose::Slides::Export::SaveFormat::Ppsm);
免費的 RTF 到 PPSM 在線轉換器
通過 C++ 加載受密碼保護的 RTF 文檔
除了文檔轉換, Aspose.Words for C++ API 為 C++ 開發人員提供了大量的文檔操作功能。如果您的 Microsoft Word RTF 文件格式受密碼保護,您仍然可以使用 API 打開它。為了加載加密文檔,您可以使用特殊的構造函數重載,它接受 LoadOptions 對象。此對象包含 Password 屬性,該屬性指定密碼字符串。
// when loading password protected rtfument, the password is passed to the rtfument's constructor using a LoadOptions object.
auto options = MakeObject<LoadOptions>(u"rtfPassword");
// load the rtfument from the local file system by filename:
SharedPtr<Rtfument> rtf = MakeObject<Rtfument>(u"Encrypted.rtf", options);
通過 C++ 在 PPSM 文檔中添加註釋
在將 RTF 保存為 PPSM 的同時,您還可以使用 Aspose.Slides for C++ 在您的 PPSM 文檔中添加更多功能。例如,您可以在演示文稿中添加評論。演示幻燈片註釋與特定作者相關聯。 Presentation 類在 ICommentAuthorCollection 中保存負責添加幻燈片註釋的作者集合。對於每個作者,ICommentCollection 中都有一組評論。
// instantiate Presentation class
SharedPtr<Presentation>pres = MakeObject<Presentation>();
// access first slide
SharedPtr<ILayoutSlide>layout = pres->get_LayoutSlides()->idx_get(0);
// add empty slide
pres->get_Slides()->AddEmptySlide(layout);
// adding Author
SharedPtr<ICommentAuthor> author = pres->get_CommentAuthors()->AddAuthor(u"John Doe", u"MF");
// set position of comments
System::Drawing::PointF point = System::Drawing::PointF(0.2f, 0.2f);
// add slide comment for an author on slide 1
author->get_Comments()->AddComment(u"Hello John, this is a slide comment", pres->get_Slides()->idx_get(1), point, DateTime::get_Now());
// access ISlide 1
SharedPtr<ISlide> slide = pres->get_Slides()->idx_get(0);
// save presentation as Ppsm
pres->Save(output.ppsm, Aspose::Slides::Export::SaveFormat::Ppsm);
經常問的問題
- 如何在線將 RTF 轉換為 PPSM?您可以在上面找到用於 RTF 轉換的在線應用程序。要開始轉換過程,您可以通過拖放或在白色區域內單擊以導入文檔來添加 RTF 文件。添加文件後,只需單擊“轉換”按鈕即可。 RTF 到 PPSM 轉換完成後,您只需單擊一下即可下載轉換後的文件。
- 轉換 RTF 需要多長時間?此在線轉換器的速度在很大程度上取決於正在轉換的 RTF 文件的大小。只需幾秒鐘即可將小型 RTF 文件轉換為 PPSM。如果您在 C++ 應用程序中使用轉換代碼,轉換速度將取決於您對應用程序的優化程度。
- 使用免費的 Aspose.Total 轉換器將 RTF 轉換為 PPSM 是否安全?當然!使用我們的在線轉換器將您的 RTF 文件轉換為 PPSM 後,PPSM 文件的下載鏈接將立即可用。我們非常重視您上傳文件的安全和隱私,並會在轉換過程完成 24 小時後將其刪除。請放心,沒有人可以訪問您的文件。我們的轉換過程,包括 RTF 轉換,是完全安全的。我們提供了一個用於測試目的的免費應用程序,以便您可以在集成代碼之前驗證結果。
- 我應該使用什麼瀏覽器來轉換 RTF?對於在線 RTF 轉換,您可以使用任何現代瀏覽器,例如 Google Chrome、Firefox、Opera 或 Safari。但是,如果您正在開發桌面應用程序,建議使用 Aspose.Total RTF Conversion API 以獲得流暢的性能。
使用 C++ 探索 RTF 轉換選項
什麼是 RTF 文件格式
RTF(富文本格式)文件格式是一種通用且廣泛支持的文件格式,用於存儲帶格式的文本文檔。它是 Microsoft 在 80 年代後期開發的一種跨平台格式,可以在不同的文字處理應用程序之間輕鬆交換。
RTF 文件通常以 .rtf 文件擴展名保存,可以打開和編輯各種文本編輯器和文字處理軟件,包括 Microsoft Word、Google Docs 和 LibreOffice。該格式允許包含各種格式元素,例如字體樣式、大小、顏色、段落、表格和圖像。
RTF 的主要優勢之一是它的平台獨立性,這意味著 RTF在一個操作系統上創建的文件可以在另一個操作系統上正確打開和呈現而不會丟失格式。這使其成為文檔交換和協作的首選。
RTF 文件使用純文本格式語法,這意味著這些文件是人類可讀的,並且可以在需要時使用文本編輯器進行修改。但是,與純文本或 Markdown 等其他格式相比,RTF 文件的大小可能相當大,因為它們明確存儲格式信息。
雖然 RTF 主要用於文本文檔,但它也可以支持嵌入其他格式文檔中的文件類型,例如圖像和對象。這允許創建更複雜和更具視覺吸引力的文檔。
什麼是 PPSM 文件格式
PPSM 文件格式是 Microsoft PowerPoint 用來保存帶有嵌入式宏的演示文稿的擴展名。它是 PPSX 文件格式的演變,通常用於 PowerPoint 幻燈片演示。 PPSM 中的“M”代表“啟用宏”,表示該文件支持在演示文稿中執行宏。
PPSM 文件允許通過使用宏在 PowerPoint 演示文稿中實現交互式和動態內容,這是一組指令或命令,可自動執行任務或添加功能。可以使用 Visual Basic for Applications (VBA) 創建宏,並提供交互式按鈕、自動操作和自定義函數等高級功能。
打開 PPSM 文件時,PowerPoint 會啟用宏的執行,從而允許演示響應用戶交互或執行預定義的操作。這可以創建交互式幻燈片並增強整體用戶體驗。
PPSM 格式對於創建自動運行的演示文稿、信息亭顯示或交互式培訓模塊特別有用。通過合併宏,演示者可以根據用戶輸入自動執行流程、觸發特定操作或自定義演示行為。
請務必注意,由於與宏相關的潛在安全風險,一些組織可能已經限制在 PowerPoint 文件中執行宏的安全設置。因此,在共享 PPSM 文件時,必須確保收件人了解宏功能並啟用適當的安全設置。