Converter e-mails para PDF em Java

Conversões de e-mails para PDF geralmente são necessárias para referência e requisitos como compartilhamento do conteúdo do e-mail. Neste artigo, aprenderemos sobre como converter arquivos de mensagens de e-mail como MSG e EML em PDF usando Java. Anteriormente, em um dos posts anteriores do blog, já aprendemos a converter arquivos MSG e EML usando C# no aplicativo .NET. Isso ajudará a automatizar a conversão de e-mail nos aplicativos da área de trabalho ou da web.

A seguir estão os tópicos abordados neste artigo:

Biblioteca de conversão Java

Neste artigo, usarei a API GroupDocs.Conversion for Java para as conversões. Ao usá-lo, você pode converter formatos de documentos de e-mail como MSG e EML para PDF e outros formatos sem perder o formato de e-mail.

Você pode obter o arquivo JAR na seção downloads. Para os aplicativos baseados em maven, segue a configuração do pom.xml:

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-conversion</artifactId>
        <version>20.6</version> 
</dependency>

Converter MSG para PDF usando Java

A seguir estão as etapas para converter os arquivos MSG do Outlook em PDF com apenas algumas linhas de código. Links incorporados nas etapas permitirão explorar ainda mais as classes e métodos.

  1. Crie uma instância da classe Converter e passe o arquivo MSG para o construtor.
  2. Instancie a classe PdfConvertOptions.
  3. Chame o método convert para obter o arquivo PDF convertido.
import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.options.convert.PdfConvertOptions;

public class EmailMessagesConverter 
{
	// Converter mensagem MSG para PDF
	public void convertMsgtoPDF(String filePath) 
	{
		Converter converter = new Converter(filePath + "emailMessage.msg");
		PdfConvertOptions options = new PdfConvertOptions();
		converter.convert(filePath + "msg-Message.pdf", options);
	}
}

Aqui está o arquivo MSG de amostra que é criado usando o Microsoft Outlook. Mais abaixo está o arquivo PDF, que é obtido convertendo o arquivo MSG usando o código java mencionado acima.

Arquivo MSG a ser convertido em PDF

arquivo MSG

Arquivo PDF convertido do MSG

Arquivo PDF convertido do formato MSG usando o código Java acima.

Converter EML para PDF usando Java

Podemos converter programaticamente nossas mensagens de e-mail armazenadas em formato EML, em formato PDF com linhas semelhantes de código java com muita facilidade e eficiência. As etapas a seguir guiarão para atingir o objetivo.

  1. Inicialize o objeto Converter fornecendo o caminho do arquivo EML de origem.
  2. Inicialize as PDFConvertOptions. Você pode definir mais personalização para o arquivo PDF resultante.
  3. Basta chamar o método convert da classe Converter e passar o caminho do arquivo PDF resultante e o PDFConvertOptions já definido como parâmetros.
// Converter mensagem EML em PDF
public void convertEmltoPDF(String filePath) 
{
	Converter converter = new Converter(filePath + "emailMessage.eml");
	PdfConvertOptions options = new PdfConvertOptions();
	converter.convert(filePath + "eml-Message.pdf", options);
}

Abaixo estão o arquivo EML de origem e as capturas de tela do arquivo PDF convertido, que foram convertidos usando o código java acima.

Arquivo EML a ser convertido em PDF

arquivo EML

Arquivo PDF convertido de EML

Arquivo PDF convertido do formato EML usando Java.

Conclusão

Neste artigo, aprendemos como converter os arquivos MSG e EML em PDF usando a API de conversão Java. Além disso, podemos aplicar programaticamente a personalização em arquivos PDF para obter o resultado no estilo desejado. Você pode obter mais informações sobre GroupDocs.Conversion para Java na documentação.

Veja também