將 EML 導出為 PNG 的 C++ API

在 C++ 應用程序中將 EML 轉換為 PNG,無需 Microsoft Word 或 Outlook

 

您是一名 C++ 開發人員,希望在您的應用程序中添加電子郵件轉換功能嗎?使用 Aspose.Eml for C++ ,您可以將 EML 文件格式轉換為 HTML。之後,通過使用 Aspose.Words for C++ API,您可以將 HTML 導出為 PNG。這兩個 API 都屬於 Aspose.Total for C++ 包。

將 EML 轉換為 PNG 的 C++ API

  1. 使用 MailMessage 類參考打開 EML 文件
  2. 使用 Save 成員函數將 EML 轉換為 HTML
  3. 使用 Document 類加載 HTML
  4. 使用 Save 方法將文檔保存為 PNG 格式,並將 Png 設置為 SaveFormat

轉換要求

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

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

// load the EML file to be converted
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"sourceFile.eml");
// save EML 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 Png as save format
doc->Save(u"convertedFile.Png");

通過 C++ 解析 EML 文件

您不僅可以將 EML 轉換為 PNG,還可以閱讀、操作和解析 EML 文檔。您可以使用 Aspose.Eml for C++ API 的 MapiMessage 類獲取電子郵件的主題、地址、正文、收件人信息。例如,您可以使用 get_SenderEmlAddress() 屬性檢查轉換的特定發件人電子郵件。

// create an instance of MapiMessage from file
System::SharedPtr<MapiMessage> msg = MapiMessage::FromFile(dataDir + L"message.eml");
// get subject
System::Console::WriteLine(System::String(L"Subject:") + msg->get_Subject());
// get from address
System::Console::WriteLine(System::String(L"From:") + msg->get_SenderEmlAddress());
// 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());

限制 PNG 文件格式編輯的 C++ API

在將文檔從 EML 導出到 PNG 時,您還可以在應用程序中添加文檔保護功能。為您的文檔添加保護是一個簡單的過程,因為您需要做的就是將保護方法應用於您的文檔。您可以將保護類型設置為只讀以限制用戶編輯文檔。

// 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.Png");

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

將 EML 轉換為 BMP (位圖圖像文件)
將 EML 轉換為 DOC (Microsoft Word 二進制格式)
將 EML 轉換為 DOCM (Microsoft Word 2007 宏文件)
將 EML 轉換為 DOCX (Office 2007+ Word文檔)
將 EML 轉換為 DOT (Microsoft Word 模板文件)
將 EML 轉換為 DOTM (Microsoft Word 2007+ 模板文件)
將 EML 轉換為 DOTX (微軟 Word 模板文件)
將 EML 轉換為 EMF (增強型圖元文件格式)
將 EML 轉換為 EPUB (打開電子書文件)
將 EML 轉換為 FLATOPC (Microsoft Word 2003 文字處理ML)
將 EML 轉換為 GIF (圖形交換格式)
將 EML 轉換為 PNG (便攜式網絡圖形)
將 EML 轉換為 JPEG (聯合攝影專家組)
將 EML 轉換為 MD (降價語言)
將 EML 轉換為 ODT (OpenDocument 文本文件格式)
將 EML 轉換為 OTT (打開文檔模板)
將 EML 轉換為 PCL (打印機命令語言)
將 EML 轉換為 PDF (便攜式文檔格式)
將 EML 轉換為 PS (後記文件)
將 EML 轉換為 RTF (富文本格式)
將 EML 轉換為 SVG (標量矢量圖形)
將 EML 轉換為 TIFF (標記圖像文件格式)
將 EML 轉換為 DOCX (Office 2007+ Word文檔)
將 EML 轉換為 WORDML (Microsoft Word 2003 文字處理ML)
將 EML 轉換為 XPS (XML 紙張規範)

什麼是 EML 文件格式

EML 文件格式代表電子郵件,是一種廣泛用於存儲電子郵件的文件格式。它主要與電子郵件客戶端相關聯,例如 Microsoft Outlook、Mozilla Thunderbird 和 Windows Mail。 EML 文件包含電子郵件的全部內容,包括發件人和收件人信息、主題、日期、附件和郵件正文。

EML 文件採用純文本格式並遵循多用途互聯網郵件擴展(MIME) 標準,它允許在電子郵件中包含各種類型的內容,例如文本、圖像和附件。這使得 EML 文件具有高度通用性,並與不同的電子郵件客戶端和平台兼容。

EML 格式通常用於歸檔或傳輸個人電子郵件。它提供了一種將電子郵件存儲為單獨文件的便捷方式,從而可以在需要時更輕鬆地組織和檢索特定郵件。 EML 文件可以在兼容的電子郵件客戶端中打開和查看,允許用戶閱讀電子郵件的內容並與之交互。

此外,EML 文件可以通過電子郵件或其他文件傳輸方式輕鬆共享。它們保留原始格式,確保收件人看到的電子郵件與發送時完全相同,包括任何附件或嵌入的圖像。

除了用於個人電子郵件之外,EML 文件還用於電子郵件遷移和備份過程。它們允許在不同的電子郵件客戶端之間傳輸電子郵件或創建備份以保護重要的通信。

什麼是 PNG 文件格式

PNG(便攜式網絡圖形)是一種廣泛使用的光柵圖形文件格式,旨在替代舊的 GIF(圖形交換格式)格式。與具有有限調色板且僅支持索引顏色的 GIF 不同,PNG 支持具有豐富顏色深度的真彩色和灰度圖像。

PNG 格式採用無損壓縮,這意味著它可以在不影響文件大小的情況下減小文件大小犧牲畫質。這使得它適合存儲對細節和清晰度要求很高的圖形,例如照片、插圖和徽標。 PNG 文件通常在 Web 上用於需要透明度的圖像,因為 PNG 支持 alpha 通道透明度,允許將圖像平滑地混合到不同的背景上。

PNG 的優點之一是它支持隔行掃描和非隔行圖像。隔行掃描的 PNG 逐漸加載,在逐漸渲染高分辨率細節之前顯示圖像的低分辨率版本。此功能對於大圖像或較慢的互聯網連接特別有用,因為它通過在圖像加載時顯示預覽來提供更好的用戶體驗。

可以使用各種圖形軟件(例如 Adobe)創建和編輯 PNG 文件Photoshop、GIMP 和 Paint.NET。它們得到跨不同操作系統的現代網絡瀏覽器、圖像查看器和編輯工具的廣泛支持。