Sei uno sviluppatore C++ e stai cercando di aggiungere funzionalità di conversione e-mail all’interno delle tue applicazioni? Usando Aspose.Eml per C++ puoi convertire il formato del file EML in HTML. Successivamente, utilizzando l’API Aspose.Words for C++ , puoi esportare HTML in PNG. Entrambe le API rientrano nel pacchetto Aspose.Total for C++ .
API C++ per convertire EML in PNG
- Aprire il file EML utilizzando il riferimento alla classe MailMessage
- Converti EML in HTML utilizzando la funzione membro Save
- Carica HTML utilizzando la classe Document
- Salvare il documento in formato PNG utilizzando il metodo Save e impostare Png come SaveFormat
Requisiti di conversione
Installa dalla riga di comando come nuget install Aspose.Total.Cpp
o tramite Package Manager Console di Visual Studio con Install-Package Aspose.Total.Cpp
.
In alternativa, scarica il programma di installazione MSI offline o le DLL in un file ZIP da downloads .
// 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");
Analizza il file EML tramite C++
Non solo puoi convertire la tua EML in PNG, ma puoi leggere, manipolare e analizzare il documento EML. È possibile ottenere informazioni su oggetto, indirizzo, corpo e destinatari dell’e-mail utilizzando la classe MapiMessage dell’API Aspose.Eml for C++ . Ad esempio, puoi verificare la presenza di un’e-mail del mittente specifica per la conversione utilizzando la proprietà 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++ per limitare la modifica del formato file PNG
Puoi anche aggiungere funzionalità di protezione dei documenti nella tua app durante l’esportazione del documento da EML a PNG. L’aggiunta della protezione al tuo documento è un processo semplice, poiché tutto ciò che devi fare è applicare il metodo di protezione al tuo documento. È possibile impostare il tipo di protezione su Sola lettura per limitare la modifica del documento da parte dell’utente.
// 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");