Pode haver vários cenários em que você precisa incorporar o conteúdo dos e-mails em seus aplicativos da Web ou da área de trabalho. Nesses casos, você pode converter as mensagens de e-mail em um formato que possa ser facilmente incorporado e exibido. Uma das soluções possíveis é a conversão de e-mail para PDF. Este artigo fornece um guia passo a passo e uma amostra de código de como converter um email EML ou MSG em PDF usando C#.
- API de conversão de e-mail para PDF em C#
- Etapas para converter e-mails em PDF usando C#
- C# Conversão de e-mail para PDF - Código completo
- Obtenha Licença Gratuita
C# EML e e-mails MSG para a API do conversor de PDF
Aspose.Email for .NET é uma biblioteca de classes C# projetada para criar e manipular formatos de e-mail populares de dentro dos aplicativos .NET. Em combinação com Aspose.Words for .NET, a API permite converter as mensagens de e-mail para o formato PDF com alta fidelidade. Você pode baixar as DLLs das APIs ou instalá-las em seus aplicativos .NET usando o NuGet.
PM> Install-Package Aspose.Words
PM> Install-Package Aspose.Email
Etapas para converter EML ou MSG em PDF usando C#
A seguir estão as etapas para converter mensagens de email em formato PDF em C#.
- Carregue o arquivo de e-mail usando a classe MailMessage.
// Carregar mensagem de e-mail usando arquivo
MailMessage mailMsg = MailMessage.Load("message.msg");
- Salve a mensagem de e-mail em um objeto MemoryStream como formato MHTML padrão.
// Criar fluxo de memória
MemoryStream ms = new MemoryStream();
// Salvar mensagem de e-mail no fluxo de memória
MailMessage.Save(ms, Aspose.Email.SaveOptions.DefaultMhtml);
- Crie uma instância da classe Aspose.Words.LoadOptions e defina o formato de carregamento como MHTML.
// Criar e definir opções de carregamento
var loadOptions = new Aspose.Words.LoadOptions();
loadOptions.LoadFormat = LoadFormat.Mhtml;
- Instancie a classe Aspose.Words.Document e passe os objetos MemoryStream e LoadOptions como parâmetros para seu construtor.
// Crie uma instância de Document e carregue o MTHML do MemoryStream
var document = new Aspose.Words.Document(ms, loadOptions);
- Crie uma instância da classe Aspose.Words.Saving.PdfSaveOptions.
// crie uma instância da classe PDFSaveOptions
var pdfSaveOptions = new Aspose.Words.Saving.PdfSaveOptions();
- Converta o e-mail para PDF usando o método Document.Save(“email-to-pdf.pdf”, PdfSaveOptions).
// Salvar e-mail como PDF
document.Save("email-to-pdf.pdf", pdfSaveOptions);
C# Conversão de e-mail para PDF - Código completo
A seguir está o código completo para converter uma mensagem de e-mail em PDF usando APIs Aspose.Emails para .NET e Aspose.Words for .NET.
// Carregar mensagem de e-mail
MailMessage mailMsg = MailMessage.Load("message.msg");
MemoryStream ms = new MemoryStream();
mailMsg.Save(ms, Aspose.Email.SaveOptions.DefaultMhtml);
// crie uma instância de LoadOptions e defina o LoadFormat para Mhtml
var loadOptions = new Aspose.Words.LoadOptions();
loadOptions.LoadFormat = LoadFormat.Mhtml;
// crie uma instância de Document e carregue o MTHML do MemoryStream
var document = new Aspose.Words.Document(ms, loadOptions);
// crie uma instância de HtmlSaveOptions
var saveOptions = new Aspose.Words.Saving.PdfSaveOptions();
document.Save("email-to-pdf.pdf", saveOptions);
Obtenha uma licença gratuita
Você pode obter uma licença temporária gratuita para experimentar as APIs sem limitações de avaliação.
Demonstração ao vivo
Conclusão
A conversão de e-mail para PDF pode entrar em prática quando você precisa incorporar as mensagens de e-mail em seus aplicativos da web ou desktop. Portanto, neste artigo, você aprendeu como converter mensagens de email em PDF usando C# em seus aplicativos .NET. Para explorar mais sobre as APIs que estão sendo usadas, você pode visitar as seguintes documentações.