Электронная почта является основным источником общения через Интернет, особенно в бизнес-среде. Могут быть такие случаи, как обсуждение и доработка требований клиента к программному обеспечению для разработки продукта. После выполнения требований к программному обеспечению вам может потребоваться создать окончательный набор документов, содержащих электронные письма и другие сведения, чтобы поделиться с вашей командой. В таких случаях преобразование электронной почты в PDF может оказаться полезным. В этой статье вы узнаете, как преобразовать сообщение электронной почты в формат PDF с помощью C++.
- C++ API преобразования электронной почты в PDF
- Преобразование сообщений электронной почты в PDF с помощью C++
- Получить бесплатную лицензию
C++ API преобразования электронной почты в PDF
Для преобразования электронной почты в PDF мы будем использовать API Aspose.Email для C++ и Aspose.Words для C++. Первый — это родная библиотека C++ для создания, управления и преобразования файлов Outlook. Принимая во внимание, что последний позволяет создавать, изменять и конвертировать файлы Microsoft Word. Кроме того, он также поддерживает преобразование файлов в формат PDF. Мы будем использовать Aspose.Email для C++ для загрузки файлов электронной почты и Aspose.Words для C++ для их преобразования в формат PDF. Вы можете либо установить API через NuGet, либо загрузить его напрямую из раздела Загрузки.
PM> Install-Package Aspose.Email.Cpp
PM> Install-Package Aspose.Words.Cpp
Преобразование сообщений электронной почты в PDF с помощью C++
Ниже приведены шаги для преобразования файлов электронной почты в формат PDF с помощью C++.
- Загрузите файл электронной почты с помощью класса MailMessage.
- Сохраните сообщение электронной почты в MemoryStream как MHTML.
- Создайте экземпляр класса LoadOptions.
- Установите формат загрузки как MHTML.
- Загрузите файл из MemoryStream, используя Document(SharedPtr поток, SharedPtr loadOptions) класса Document.
- Сохраните электронное письмо в виде файла PDF, используя метод Документ->Сохранить(String fileName, SaveFormat saveFormat).
В следующем примере кода показано, как преобразовать сообщения электронной почты в формат 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 и загрузите MTHML из MemoryStream.
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 без ограничений по ознакомительной версии, запросив бесплатную временную лицензию.
Живая демонстрация
Вывод
В этой статье вы узнали, как конвертировать сообщения электронной почты в формат PDF с помощью C++. Для этого мы использовали Aspose.Email для C++ для загрузки электронной почты и Aspose.Words для C++ для преобразования его в PDF. Оба этих API предоставляют множество функций для работы с электронной почтой и файлами MS Word. Чтобы подробно изучить эти API, вы можете посетить их официальную документацию.