将 EML 导出为 EMF 的 C++ API

在 C++ 应用程序中将 EML 转换为 EMF,无需 Microsoft Word 或 Outlook

 

您是一名 C++ 开发人员,希望在您的应用程序中添加电子邮件转换功能吗?使用 Aspose.Eml for C++ ,您可以将 EML 文件格式转换为 HTML。之后,通过使用 Aspose.Words for C++ API,您可以将 HTML 导出为 EMF。这两个 API 都属于 Aspose.Total for C++ 包。

将 EML 转换为 EMF 的 C++ API

  1. 使用 MailMessage 类参考打开 EML 文件
  2. 使用 Save 成员函数将 EML 转换为 HTML
  3. 使用 Document 类加载 HTML
  4. 使用 Save 方法将文档保存为 EMF 格式,并将 Emf 设置为 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 Emf as save format
doc->Save(u"convertedFile.Emf");

通过 C++ 解析 EML 文件

您不仅可以将 EML 转换为 EMF,还可以阅读、操作和解析 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());

限制 EMF 文件格式编辑的 C++ API

在将文档从 EML 导出到 EMF 时,您还可以在应用程序中添加文档保护功能。为您的文档添加保护是一个简单的过程,因为您需要做的就是将保护方法应用于您的文档。您可以将保护类型设置为只读以限制用户编辑文档。

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

使用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转换为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转换为PNG (便携式网络图形)
将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 文件还用于电子邮件迁移和备份过程。它们允许在不同的电子邮件客户端之间传输电子邮件或创建备份以保护重要的通信。

什么是EMF文件格式

EMF 文件格式是 Enhanced Metafile 的缩写,是由 Microsoft 开发的一种广泛使用的矢量图形文件格式。 EMF 文件主要用于存储和交换二维图形图像,并得到各种应用程序和操作系统的支持。

EMF 文件基于 Windows 图形设备接口 (GDI),由一系列绘图命令组成,形状和定义图像的文本说明。与位图格式不同,EMF 文件将图形元素存储为可缩放对象而不是像素网格。这允许在不损失质量的情况下平滑缩放和调整大小。

EMF 文件通常用于需要高质量图形和打印的应用程序,例如图形设计、桌面出版和文档处理。它们可以很容易地插入到其他 Microsoft Office 应用程序(如 Word、PowerPoint 或 Excel)中,从而允许将复杂的插图或图表合并到文档中。

EMF 文件的一个优点是它们的体积小,因为它们通常是小于等效位图图像。此外,它们可以使用矢量图形软件轻松编辑和修改,从而在调整颜色、形状和其他图形属性方面提供灵活性。