将电子邮件转换为 PDF C++

电子邮件是通过 Internet 进行通信的主要来源,尤其是在商业环境中。可能存在诸如讨论和最终确定客户对产品开发的软件需求的情况。完成软件要求后,您可能需要生成包含电子邮件和其他详细信息的最终文档集,以与您的团队共享。在这种情况下,将电子邮件转换为 PDF 可能会有所帮助。在本文中,您将学习如何使用 C++ 将电子邮件消息转换为 PDF 格式。

C++ 电子邮件到 PDF 转换 API

要将电子邮件转换为 PDF,我们将使用 Aspose.Email for C++Aspose.Words for C++ API。前者是用于创建、操作和转换 Outlook 文件的本机 C++ 库。而后者允许您生成、修改和转换 Microsoft Word 文件。此外,它还支持将文件转换为 PDF 格式。我们将使用 Aspose.Email for C++ 加载电子邮件文件,使用 Aspose.Words for C++ 将其转换为 PDF 格式。您可以通过 NuGet 安装 API,也可以直接从 下载 部分下载。

PM> Install-Package Aspose.Email.Cpp
PM> Install-Package Aspose.Words.Cpp

使用 C++ 将电子邮件消息转换为 PDF

以下是使用 C++ 将电子邮件文件转换为 PDF 格式的步骤。

以下代码示例展示了如何将电子邮件消息转换为 PDF 格式。

// 源电子邮件文件
System::String sampleFile = u"SourceDirectory\\Message.msg";

// 使用文件加载电子邮件
System::SharedPtr<Aspose::Email::MailMessage> msg = Aspose::Email::MailMessage::Load(sampleFile);

// 创建内存流
System::SharedPtr<System::IO::MemoryStream> stream = System::MakeObject<System::IO::MemoryStream>();

// 将电子邮件信息保存到内存流中
msg->Save(stream, Aspose::Email::SaveOptions::get_DefaultMhtml());

// 创建负载选项
System::SharedPtr<Aspose::Words::LoadOptions> loadOptions = System::MakeObject<Aspose::Words::LoadOptions>();

// 设置加载格式
loadOptions->set_LoadFormat(Aspose::Words::LoadFormat::Mhtml);

// 创建 Document 类的实例并从 MemoryStream 加载 MTHML
System::SharedPtr<Aspose::Words::Document> doc = System::MakeObject<Aspose::Words::Document>(stream, loadOptions);

// 输出文件路径
System::String outputPath = u"OutputDirectory\\email-to-pdf.pdf";

// 将电子邮件另存为 PDF
doc->Save(outputPath, Aspose::Words::SaveFormat::Pdf);

获得免费许可证

您可以通过请求 免费的临时许可证 来试用该 API,而不受评估限制。

现场演示

结论

在本文中,您学习了如何使用 C++ 将电子邮件消息转换为 PDF 格式。为此,我们使用 Aspose.Email for C++ 加载电子邮件,使用 Aspose.Words for C++ 将其转换为 PDF。这两个 API 都提供了许多用于处理电子邮件和 MS Word 文件的功能。要详细探索这些 API,您可以访问它们的官方文档。

也可以看看