您是一名 C++ 開發人員,希望在您的應用程序中添加電子郵件轉換功能嗎?使用 Aspose.Emlx for C++ ,您可以將 EMLX 文件格式轉換為 HTML。之後,通過使用 Aspose.Words for C++ API,您可以將 HTML 導出為 RTF。這兩個 API 都屬於 Aspose.Total for C++ 包。
將 EMLX 轉換為 RTF 的 C++ API
- 使用 MailMessage 類參考打開 EMLX 文件
- 使用 Save 成員函數將 EMLX 轉換為 HTML
- 使用 Document 類加載 HTML
- 使用 Save 方法將文檔保存為 RTF 格式,並將 Rtf 設置為 SaveFormat
轉換要求
從命令行安裝為 nuget install Aspose.Total.Cpp
或通過 Visual Studio 的包管理器控制台使用 Install-Package Aspose.Total.Cpp
。
或者,從 下載 獲取 ZIP 文件中的離線 MSI 安裝程序或 DLL。
// load the EMLX file to be converted
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"sourceFile.emlx");
// save EMLX as a HTML
msg->Save(u"HtmlOutput.html", SaveOptions::get_DefaultHtml());
// load HTML with an instance of Document
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"HtmlOutput.html");
// call save method while passing Rtf as save format
doc->Save(u"convertedFile.Rtf");
通過 C++ 解析 EMLX 文件
您不僅可以將 EMLX 轉換為 RTF,還可以閱讀、操作和解析 EMLX 文檔。您可以使用 Aspose.Emlx for C++ API 的 MapiMessage 類獲取電子郵件的主題、地址、正文、收件人信息。例如,您可以使用 get_SenderEmlxAddress() 屬性檢查轉換的特定發件人電子郵件。
// create an instance of MapiMessage from file
System::SharedPtr<MapiMessage> msg = MapiMessage::FromFile(dataDir + L"message.emlx");
// get subject
System::Console::WriteLine(System::String(L"Subject:") + msg->get_Subject());
// get from address
System::Console::WriteLine(System::String(L"From:") + msg->get_SenderEmlxAddress());
// get body
System::Console::WriteLine(System::String(L"Body") + msg->get_Body());
// get recipients information
System::Console::WriteLine(System::String(L"Recipient: ") + msg->get_Recipients());
限制 RTF 文件格式編輯的 C++ API
在將文檔從 EMLX 導出到 RTF 時,您還可以在應用程序中添加文檔保護功能。為您的文檔添加保護是一個簡單的過程,因為您需要做的就是將保護方法應用於您的文檔。您可以將保護類型設置為只讀以限制用戶編輯文檔。
// create a new document and protect it with a password.
auto doc = System::MakeObject<Document>();
// apply Document Protection.
doc->Protect(ProtectionType::ReadOnly, u"password");
// save the document.
doc->Save(u"DocumentProtection.PasswordProtection.Rtf");
使用 C++ 探索 EMLX 轉換選項
什麼是 EMLX 文件格式
EMLX 文件格式是 Apple Mail(macOS 的默認電子郵件客戶端)專門使用的 EML(電子郵件)格式的變體。雖然 EML 文件被各種電子郵件客戶端廣泛使用,但 EMLX 文件特定於 Apple Mail。
EMLX 文件單獨存儲電子郵件消息,類似於 EML 文件,但文件結構略有不同。每個 EMLX 文件代表一封電子郵件,並包含完整的郵件數據,包括發件人和收件人的詳細信息、主題、日期、附件和郵件正文。這些文件通常存儲在 Apple Mail 用戶郵箱文件夾內的特定目錄層次結構中。
EMLX 格式基於 MIME(多用途互聯網郵件擴展)標準,允許包含各種類型的內容在電子郵件中。這包括文本、HTML 格式、附件和嵌入式圖像,以確保將整個電子郵件信息保存在 EMLX 文件中。
EMLX 文件可用於 Apple Mail 生態系統中的電子郵件存檔、備份和遷移目的.它們提供了一種方便的方式來存儲和傳輸個人電子郵件消息,同時保持其原始格式和結構。 EMLX 文件可以在不同的 Apple Mail 實例之間輕鬆共享或傳輸,或導入到支持 EMLX 格式的其他電子郵件客戶端。
請務必注意,EMLX 文件特定於 Apple Mail,可能無法直接兼容與其他電子郵件客戶端。但是,轉換工具或電子郵件遷移軟件通常可以將 EMLX 文件轉換為其他標準電子郵件格式,以實現更廣泛的兼容性。
什麼是 RTF 文件格式
RTF(富文本格式)文件格式是一種通用且廣泛支持的文件格式,用於存儲帶格式的文本文檔。它是 Microsoft 在 80 年代後期開發的一種跨平台格式,可以在不同的文字處理應用程序之間輕鬆交換。
RTF 文件通常以 .rtf 文件擴展名保存,可以打開和編輯各種文本編輯器和文字處理軟件,包括 Microsoft Word、Google Docs 和 LibreOffice。該格式允許包含各種格式元素,例如字體樣式、大小、顏色、段落、表格和圖像。
RTF 的主要優勢之一是它的平台獨立性,這意味著 RTF在一個操作系統上創建的文件可以在另一個操作系統上正確打開和呈現而不會丟失格式。這使其成為文檔交換和協作的首選。
RTF 文件使用純文本格式語法,這意味著這些文件是人類可讀的,並且可以在需要時使用文本編輯器進行修改。但是,與純文本或 Markdown 等其他格式相比,RTF 文件的大小可能相當大,因為它們明確存儲格式信息。
雖然 RTF 主要用於文本文檔,但它也可以支持嵌入其他格式文檔中的文件類型,例如圖像和對象。這允許創建更複雜和更具視覺吸引力的文檔。