EML und MSG sind beliebte E-Mail-Formate, die von MS Outlook zum Speichern von E-Mails verwendet werden. Es kann Fälle geben, in denen Sie den Inhalt von EML- oder MSG-Dateien aus Ihren Web- oder Desktop-Anwendungen freigeben müssen. Eine der am besten geeigneten Lösungen ist die Konvertierung von E-Mail-Dateien in das PDF-Format. In diesem Artikel erfahren Sie, wie Sie eine EML- oder MSG-E-Mail programmgesteuert in Java in PDF konvertieren.
- Java-APIs für die E-Mail-in-PDF-Konvertierung
- Konvertieren Sie EML in PDF mit Java
- Holen Sie sich eine kostenlose Lizenz
Java EML und MSG to PDF Converter APIs
Um E-Mail-Dateien in PDF zu konvertieren, verwenden wir die Kombination aus Aspose.Email for Java und Aspose.Words for Java. Ersteres ist eine E-Mail-API, die eine Reihe von Funktionen zum Erstellen von E-Mail-Client-Anwendungen bietet. Während letzteres eine Textverarbeitungs-API zum Erstellen und Bearbeiten von Word-Dokumenten ist. Sie können die folgenden Maven-Konfigurationen verwenden, um die API in Ihren Java-Anwendungen zu installieren.
Repository:
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>http://repository.aspose.com/repo/</url>
<repository>
Abhängigkeiten:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-email</artifactId>
<version>22.2</version>
<classifier>jdk16</classifier>
</dependency>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words</artifactId>
<version>22.3</version>
<type>pom</type>
</dependency>
Außerdem können Sie die JARs der APIs über die folgenden Links herunterladen.
Konvertieren Sie eine EML- oder MSG-Datei in PDF in Java
Im Folgenden sind die Schritte zum Konvertieren einer EML- oder MSG-E-Mail in das PDF-Format in Java aufgeführt.
- Laden Sie die E-Mail-Datei mit der Klasse MailMessage.
- Speichern Sie die E-Mail-Nachricht in einem ByteArrayOutputStream-Objekt im standardmäßigen MHTML-Format.
- Erstellen Sie eine Instanz der Klasse LoadOptions und legen Sie das Ladeformat als MHTML fest.
- Instanziieren Sie die Klasse Document und übergeben Sie die Objekte ByteArrayOutputStream und LoadOptions als Parameter an ihren Konstruktor.
- Konvertieren Sie die E-Mail mit der Methode Document.save(String, SaveFormat.PDF) in PDF.
Das Folgende ist der vollständige Code zum Konvertieren einer E-Mail-Nachricht in PDF in Java.
// E-Mail laden
FileInputStream fstream=new FileInputStream("email.eml");
MailMessage eml = MailMessage.load(fstream);
// Speichern Sie die Nachricht, um den Stream im MHTML-Format auszugeben
ByteArrayOutputStream emlStream = new ByteArrayOutputStream();
eml.save(emlStream, SaveOptions.getDefaultMhtml());
// Laden Sie den Stream in das Word-Dokument
LoadOptions lo = new LoadOptions();
lo.setLoadFormat(LoadFormat.MHTML);
Document doc = new Document(new ByteArrayInputStream(emlStream.toByteArray()), lo);
// Auf Disc speichern
doc.save("converted.Pdf", SaveFormat.PDF);
// Oder zum Streamen speichern
ByteArrayOutputStream foStream = new ByteArrayOutputStream();
doc.save(foStream, SaveFormat.PDF);
Holen Sie sich eine kostenlose Lizenz
Sie können eine kostenlose temporäre Lizenz erhalten, um die APIs ohne Evaluierungseinschränkungen zu testen.
Live-Demo
Fazit
In diesem Artikel haben Sie gelernt, wie Sie EML- oder MSG-E-Mail-Nachrichten in Java in PDF konvertieren. Wir haben gezeigt, wie die Kombination von Aspose.Email und Aspose.Words verwendet wird, um die Konvertierung von E-Mail in PDF aus Java-Anwendungen heraus zu implementieren. Sie können auch die unten genannten Dokumentationen beider APIs durchsuchen. Sie können Ihre Fragen auch in unserem Forum posten.