Êtes-vous un développeur C++ cherchant à ajouter des fonctionnalités de conversion d’e-mails dans vos applications ? En utilisant Aspose.Eml pour C++ , vous pouvez convertir le format de fichier EML en HTML. Après cela, en utilisant l’API Aspose.Words for C++ , vous pouvez exporter du HTML vers PNG. Les deux API relèvent du package Aspose.Total for C++ .
API C++ pour convertir EML en PNG
- Ouvrez le fichier EML à l’aide de la référence de classe MailMessage
- Convertissez EML en HTML en utilisant la fonction membre Save
- Chargez HTML en utilisant la classe Document
- Enregistrez le document au format PNG à l’aide de la méthode Save et définissez Png comme SaveFormat
Exigences de conversion
Installez à partir de la ligne de commande en tant que nuget install Aspose.Total.Cpp
ou via la console du gestionnaire de packages de Visual Studio avec Install-Package Aspose.Total.Cpp
.
Vous pouvez également obtenir le programme d’installation MSI hors ligne ou les DLL dans un fichier ZIP à partir de téléchargements .
// 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");
Analyser le fichier EML via C++
Non seulement vous pouvez convertir votre EML en PNG, mais vous pouvez également lire, manipuler et analyser le document EML. Vous pouvez obtenir des informations sur le sujet, l’adresse, le corps et les destinataires de l’e-mail en utilisant la classe MapiMessage de l’API Aspose.Eml pour C++ . Par exemple, vous pouvez rechercher un e-mail d’expéditeur spécifique pour la conversion en utilisant la propriété 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());
API C++ pour restreindre l'édition du format de fichier PNG
Vous pouvez également ajouter des fonctionnalités de protection de document dans votre application lors de l’exportation du document d’EML vers PNG. L’ajout d’une protection à votre document est un processus simple, car tout ce que vous avez à faire est d’appliquer la méthode de protection à votre document. Vous pouvez définir le type de protection sur Lecture seule pour empêcher l’utilisateur de modifier le document.
// 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");