Salvando um Email como PDF
Este artigo mostra como converter uma mensagem de email para PDF usando o Aspose.Email. O Aspose.Email para .NET lida com protocolos de rede e recursos do Microsoft Outlook, e não pode lidar com conversão direta para PDF. Para contornar isso, os exemplos neste artigo usam o Aspose.Email para converter a mensagem de email para o fluxo MHTML e então usam o Aspose.Words para .NET para carregar o fluxo MHTML e salvá‑lo como PDF. Uma mensagem de email pode conter anexos também. Como cada anexo pode ter tipos de mídia diferentes, o Aspose.Email ignora esses anexos ao converter para MHTML, ou seja, somente imagens inline em uma mensagem farão parte do MHTML e quaisquer anexos regulares serão ignorados.
Convertendo Mensagem de Email para PDF
O código a seguir mostra a conversão de mensagens de email para PDF usando Aspose.Email em combinação com Aspose.Words para .NET. Isso envolve os seguintes passos:
- Carregue a mensagem de email usando MailMessage
- Salvar a mensagem de e‑mail em MemoryStream como MHTML
- Carregar o fluxo usando Aspose.Words
- Salvar a mensagem como PDF
A mensagem de e‑mail original pode ser vista da seguinte forma:

O PDF convertido é mostrado na imagem a seguir:

O trecho de código a seguir mostra como converter mensagens de email para PDF.
string dataDir = RunExamples.GetDataDir_KnowledgeBase();
MailMessage mailMsg = MailMessage.Load(dataDir + "message3.msg");
MemoryStream ms = new MemoryStream();
mailMsg.Save(ms, Aspose.Email.SaveOptions.DefaultMhtml);
// create an instance of LoadOptions and set the LoadFormat to Mhtml
var loadOptions = new Aspose.Words.Loading.LoadOptions();
loadOptions.LoadFormat = LoadFormat.Mhtml;
// create an instance of Document and load the MTHML from MemoryStream
var document = new Aspose.Words.Document(ms, loadOptions);
// create an instance of HtmlSaveOptions and set the SaveFormat to Html
var saveOptions = new Aspose.Words.Saving.PdfSaveOptions();
document.Save(dataDir + "SaveEmailAsPDF_out.pdf", saveOptions);