Преобразование электронной почты в PDF C++

Электронная почта является основным источником общения через Интернет, особенно в бизнес-среде. Могут быть такие случаи, как обсуждение и доработка требований клиента к программному обеспечению для разработки продукта. После выполнения требований к программному обеспечению вам может потребоваться создать окончательный набор документов, содержащих электронные письма и другие сведения, чтобы поделиться с вашей командой. В таких случаях преобразование электронной почты в 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++.

В следующем примере кода показано, как преобразовать сообщения электронной почты в формат 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, вы можете посетить их официальную документацию.

Смотрите также