Convertir correos electrónicos a PDF en Java

Las conversiones de correos electrónicos a PDF a menudo se requieren para referencias y requisitos como compartir el contenido del correo electrónico. En este artículo, aprenderemos sobre cómo convertir archivos de mensajes de correo electrónico como MSG y EML en PDF utilizando Java. Anteriormente, en una de las publicaciones de blog anteriores, ya aprendimos a convertir archivos MSG y EML usando C# en la aplicación .NET. Esto ayudará a automatizar la conversión de correo electrónico dentro de las aplicaciones web o de escritorio.

Los siguientes son los temas tratados en este artículo:

Biblioteca de conversión de Java

En este artículo, usaré la API GroupDocs.Conversion for Java para las conversiones. Al usarlo, puede convertir formatos de documentos de correo electrónico como MSG y EML a PDF y otros formatos sin perder el formato de correo electrónico.

Puede obtener el archivo JAR de la sección descargas. Para las aplicaciones basadas en maven, la siguiente es la configuración de 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>

Convertir MSG a PDF usando Java

Los siguientes son los pasos para convertir los archivos MSG de Outlook a PDF con solo unas pocas líneas de código. Los enlaces integrados en los pasos permitirán explorar más a fondo las clases y los métodos.

  1. Cree una instancia de la clase Converter y pase el archivo MSG al constructor.
  2. Cree una instancia de la clase PdfConvertOptions.
  3. Llame al método convert para obtener el archivo PDF convertido.
import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.options.convert.PdfConvertOptions;

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

Aquí está el archivo MSG de muestra que se crea con Microsoft Outlook. Más abajo está el archivo PDF, que se obtiene al convertir el archivo MSG utilizando el código java mencionado anteriormente.

Archivo MSG para convertir a PDF

archivo MSG

Archivo PDF convertido de MSG

Archivo PDF convertido del formato MSG utilizando el código Java anterior.

Convierta EML a PDF usando Java

Podemos convertir mediante programación nuestros mensajes de correo electrónico almacenados en formato EML, en formato PDF con líneas similares de código Java de manera muy fácil y eficiente. Los siguientes pasos guiarán para lograr el objetivo.

  1. Inicialice el objeto Converter proporcionando la ruta del archivo EML de origen.
  2. Inicialice PDFConvertOptions. Puede establecer una personalización adicional para el archivo PDF resultante.
  3. Simplemente llame al método convert de la clase Converter y pásele la ruta del archivo PDF resultante y las PDFConvertOptions ya establecidas como parámetros.
// Convertir mensaje EML a PDF
public void convertEmltoPDF(String filePath) 
{
	Converter converter = new Converter(filePath + "emailMessage.eml");
	PdfConvertOptions options = new PdfConvertOptions();
	converter.convert(filePath + "eml-Message.pdf", options);
}

A continuación se muestran el archivo EML de origen y las capturas de pantalla del archivo PDF convertido, que se ha convertido utilizando el código Java anterior.

Archivo EML para convertir a PDF

archivo EML

Archivo PDF convertido de EML

Archivo PDF convertido de formato EML usando Java.

Conclusión

En este artículo, aprendimos cómo convertir los archivos MSG y EML a PDF utilizando la API de conversión de Java. Además, podemos aplicar la personalización mediante programación en archivos PDF para obtener el resultado en el estilo deseado. Puede obtener más información sobre GroupDocs.Conversion for Java en la documentación.

Ver también