Aspose.Total for C++ 包含強大的文件自動化 API,允許在使用其中兩個 API 時自動進行 RTF 到 POTM 的轉換。使用 Aspose.Words for C++ 加載您的 RTF 並將其轉換為 HTML,然後通過 PowerPoint 操作 C++ API Aspose.Slides for C++ 加載 HTML 創建一個新的演示文稿,並將其保存為 POTM。
C++ 上的 RTF 到 POTM 轉換
- 用 Rtfument 類參考打開RTF文件
- 使用 Save 成員函數將 RTF 轉換為 HTML
- 始化一個新的 Presentation 對象
- 在你的幻燈片中添加一個自選圖形,並在其中添加 AddTextFrame
- 加載 HTML 內容並將其寫入您的 Presentation 文件中
- 使用 Save 方法將文檔保存為 POTM 格式,並將 Potm 設置為 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 Potm
pres->Save(output.potm, Aspose::Slides::Export::SaveFormat::Potm);
免費的 RTF 到 POTM 在線轉換器
通過 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++ 在 POTM 文檔中添加註釋
在將 RTF 保存為 POTM 的同時,您還可以使用 Aspose.Slides for C++ 在您的 POTM 文檔中添加更多功能。例如,您可以在演示文稿中添加評論。演示幻燈片註釋與特定作者相關聯。 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 Potm
pres->Save(output.potm, Aspose::Slides::Export::SaveFormat::Potm);
經常問的問題
- 如何在線將 RTF 轉換為 POTM?您可以在上面找到用於 RTF 轉換的在線應用程序。要開始轉換過程,您可以通過拖放或在白色區域內單擊以導入文檔來添加 RTF 文件。添加文件後,只需單擊“轉換”按鈕即可。 RTF 到 POTM 轉換完成後,您只需單擊一下即可下載轉換後的文件。
- 轉換 RTF 需要多長時間?此在線轉換器的速度在很大程度上取決於正在轉換的 RTF 文件的大小。只需幾秒鐘即可將小型 RTF 文件轉換為 POTM。如果您在 C++ 應用程序中使用轉換代碼,轉換速度將取決於您對應用程序的優化程度。
- 使用免費的 Aspose.Total 轉換器將 RTF 轉換為 POTM 是否安全?當然!使用我們的在線轉換器將您的 RTF 文件轉換為 POTM 後,POTM 文件的下載鏈接將立即可用。我們非常重視您上傳文件的安全和隱私,並會在轉換過程完成 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 主要用於文本文檔,但它也可以支持嵌入其他格式文檔中的文件類型,例如圖像和對象。這允許創建更複雜和更具視覺吸引力的文檔。
什麼是 POTM 文件格式
POTM 是 Microsoft PowerPoint 中使用的一種文件格式,用於存儲也包含宏的演示文稿模板。與POTX格式類似,POTM文件是PowerPoint 2007中引入的Office Open XML(OOXML)格式的一部分。
POTM中的“M”代表宏,表示這些模板可以包含VBA(Visual Basic用於應用程序)代碼,可自動執行任務並增強演示文稿的功能。這允許用戶創建超越靜態設計元素的動態和交互式模板。
POTM 文件在提供預先設計的幻燈片佈局、格式和样式方面具有與 POTX 文件相同的優勢。但是,宏的包含為模板增加了額外的交互性和自動化層。宏可以執行數據操作、計算、幻燈片切換和用戶交互等任務,使演示文稿更具吸引力和效率。
要使用 POTM 文件,用戶可以在 PowerPoint 中打開它或選擇它作為模板創建一個新的演示文稿。 POTM 模板中嵌入的宏可以在演示過程中執行並與之交互,提供標準模板無法提供的增強功能。
需要注意的是,出於安全考慮,某些系統和組織可能在 PowerPoint 演示文稿中運行宏有限制。在這種情況下,用戶可能需要調整他們的安全設置或獲得必要的權限以啟用 POTM 文件中的宏的執行。
POTM 文件與各種平台上的不同版本的 PowerPoint 兼容,允許用戶創建和跨不同設備和環境與宏共享模板。它們為創建交互式和自動演示文稿提供了強大的工具,為用戶提供了更大的靈活性和自定義選項。