將 RTF 轉換為 ODP 的 C++ API 或在線應用程序

在您的 C++ 應用程序中將 RTF 導出為 ODP,而無需使用 Microsoft Word®或 PowerPoint

 

Aspose.Total for C++ 包含強大的文件自動化 API,允許在使用其中兩個 API 時自動進行 RTF 到 ODP 的轉換。使用 Aspose.Words for C++ 加載您的 RTF 並將其轉換為 HTML,然後通過 PowerPoint 操作 C++ API Aspose.Slides for C++ 加載 HTML 創建一個新的演示文稿,並將其保存為 ODP。

C++ 上的 RTF 到 ODP 轉換

  1. Rtfument 類參考打開RTF文件
  2. 使用 Save 成員函數將 RTF 轉換為 HTML
  3. 始化一個新的 Presentation 對象
  4. 在你的幻燈片中添加一個自選圖形,並在其中添加 AddTextFrame
  5. 加載 HTML 內容並將其寫入您的 Presentation 文件中
  6. 使用 Save 方法將文檔保存為 ODP 格式,並將 Odp 設置為 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 Odp
pres->Save(output.odp, Aspose::Slides::Export::SaveFormat::Odp);                  

免費的 RTF 到 ODP 在線轉換器

通過 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++ 在 ODP 文檔中添加註釋

在將 RTF 保存為 ODP 的同時,您還可以使用 Aspose.Slides for C++ 在您的 ODP 文檔中添加更多功能。例如,您可以在演示文稿中添加評論。演示幻燈片註釋與特定作者相關聯。 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 Odp
pres->Save(output.odp, Aspose::Slides::Export::SaveFormat::Odp);  

經常問的問題

  • 如何在線將 RTF 轉換為 ODP?
    您可以在上面找到用於 RTF 轉換的在線應用程序。要開始轉換過程,您可以通過拖放或在白色區域內單擊以導入文檔來添加 RTF 文件。添加文件後,只需單擊“轉換”按鈕即可。 RTF 到 ODP 轉換完成後,您只需單擊一下即可下載轉換後的文件。
  • 轉換 RTF 需要多長時間?
    此在線轉換器的速度在很大程度上取決於正在轉換的 RTF 文件的大小。只需幾秒鐘即可將小型 RTF 文件轉換為 ODP。如果您在 C++ 應用程序中使用轉換代碼,轉換速度將取決於您對應用程序的優化程度。
  • 使用免費的 Aspose.Total 轉換器將 RTF 轉換為 ODP 是否安全?
    當然!使用我們的在線轉換器將您的 RTF 文件轉換為 ODP 後,ODP 文件的下載鏈接將立即可用。我們非常重視您上傳文件的安全和隱私,並會在轉換過程完成 24 小時後將其刪除。請放心,沒有人可以訪問您的文件。我們的轉換過程,包括 RTF 轉換,是完全安全的。我們提供了一個用於測試目的的免費應用程序,以便您可以在集成代碼之前驗證結果。
  • 我應該使用什麼瀏覽器來轉換 RTF?
    對於在線 RTF 轉換,您可以使用任何現代瀏覽器,例如 Google Chrome、Firefox、Opera 或 Safari。但是,如果您正在開發桌面應用程序,建議使用 Aspose.Total RTF Conversion API 以獲得流暢的性能。

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

將 RTF 轉換為 CSV (逗號分隔值)
將 RTF 轉換為 DIF (數據交換格式)
將 RTF 轉換為 XLSX (打開 XML 工作簿)
將 RTF 轉換為 FODS (OpenDocument 平面 XML 電子表格)
將 RTF 轉換為 ODS (OpenDocument電子表格)
將 RTF 轉換為 SXC (StarSuite Calc 電子表格)
將 RTF 轉換為 TSV (製表符分隔值)
將 RTF 轉換為 XLAM (Excel 啟用宏的加載項)
將 RTF 轉換為 XLS (Microsoft Excel 二進制格式)
將 RTF 轉換為 XLSB (Excel 二進制工作簿)
將 RTF 轉換為 XLSM (啟用宏的電子表格)
將 RTF 轉換為 XLSX (打開 XML 工作簿)
將 RTF 轉換為 XLT (Excel 97 - 2003 模板)
將 RTF 轉換為 XLTM (Excel 啟用宏的模板)
將 RTF 轉換為 POT (Microsoft PowerPoint 模板文件)
將 RTF 轉換為 POTM (微軟 PowerPoint 模板文件)
將 RTF 轉換為 POTX (Microsoft PowerPoint 模板演示)
將 RTF 轉換為 PPTX (打開 XML 表示格式)
將 RTF 轉換為 PPS (PowerPoint 幻燈片放映)
將 RTF 轉換為 PPSM (啟用宏的幻燈片放映)
將 RTF 轉換為 PPSX (PowerPoint 幻燈片放映)
將 RTF 轉換為 PPT (PowerPoint演示文稿)
將 RTF 轉換為 PPTM (啟用宏的演示文稿文件)
將 RTF 轉換為 PPTX (打開 XML 表示格式)

什麼是 RTF 文件格式

RTF(富文本格式)文件格式是一種通用且廣泛支持的文件格式,用於存儲帶格式的文本文檔。它是 Microsoft 在 80 年代後期開發的一種跨平台格式,可以在不同的文字處理應用程序之間輕鬆交換。

RTF 文件通常以 .rtf 文件擴展名保存,可以打開和編輯各種文本編輯器和文字處理軟件,包括 Microsoft Word、Google Docs 和 LibreOffice。該格式允許包含各種格式元素,例如字體樣式、大小、顏色、段落、表格和圖像。

RTF 的主要優勢之一是它的平台獨立性,這意味著 RTF在一個操作系統上創建的文件可以在另一個操作系統上正確打開和呈現而不會丟失格式。這使其成為文檔交換和協作的首選。

RTF 文件使用純文本格式語法,這意味著這些文件是人類可讀的,並且可以在需要時使用文本編輯器進行修改。但是,與純文本或 Markdown 等其他格式相比,RTF 文件的大小可能相當大,因為它們明確存儲格式信息。

雖然 RTF 主要用於文本文檔,但它也可以支持嵌入其他格式文檔中的文件類型,例如圖像和對象。這允許創建更複雜和更具視覺吸引力的文檔。

什麼是 ODP 文件格式

ODP 是一種文件格式,用於以開放文檔格式 (ODF) 存儲演示幻燈片。 ODP 代表開放文檔演示。它是 LibreOffice Impress、OpenOffice Impress 和 Apache OpenOffice 等演示軟件應用程序的默認文件格式。

ODP 文件基於 XML,這是一種用於組織和構建數據的標記語言。它們旨在成為一種開放且可互操作的格式,允許用戶跨不同的軟件應用程序和平台創建、編輯和共享演示文稿幻燈片。

ODP 格式支持演示文稿中常用的各種功能和元素.它包括對幻燈片佈局、文本格式、圖像、圖表、表格、過渡、動畫和音頻和視頻等多媒體元素的支持。

ODP 格式的優勢之一是它與不同的演示軟件兼容.用戶可以在一個應用程序中創建 ODP 演示文稿並在另一個應用程序中打開它,而不會丟失格式或內容。這有助於協作並允許在用戶之間無縫共享和編輯演示文稿。

ODP 文件可以輕鬆轉換為其他流行的演示文稿格式,例如 Microsoft PowerPoint 的 PPTX 格式或 PDF,以實現更廣泛的訪問和共享目的。此外,ODP 格式促進了文檔的長期保存和可訪問性,確保隨著時間的推移可以準確地訪問和顯示演示文稿。