Spara en MSG som PDF
Contents
[
Hide
]
Denna artikel visar hur man konverterar ett e‑postmeddelande till PDF med Aspose.Email. Aspose.Email för Java hanterar Microsoft Outlook‑funktioner och kan inte göra en direkt konvertering till PDF. För att lösa detta använder exemplen i artikeln Aspose.Email för att konvertera e‑postmeddelandet till en MHTML‑ström och sedan Aspose.Words för Java för att läsa MHTML‑strömmen och spara den som PDF.
Ett e‑postmeddelande kan också innehålla bilagor. Eftersom varje bilaga kan ha olika mediatyp ignorerar Aspose.Email dessa bilagor vid konvertering till MHTML, d.v.s. endast inbäddade bilder i meddelandet blir en del av MHTML och vanliga bilagor ignoreras.
Konvertera e‑postmeddelande till PDF
Följande kod visar konvertering av e‑postmeddelande till PDF med Aspose.Email i kombination med Aspose.Words för Java. Detta innebär följande steg:
- Läs in e‑postmeddelandet med MailMessage
- Spara e‑postmeddelandet till MemoryStream som MHTML
- Läs in strömmen med Aspose.Words
- Spara meddelandet som PDF
Käll‑e‑postmeddelandet kan visas enligt följande:
|
| | :- | |Figur: Källfil MSG |
|
| | :- | |Figur: Konverterad PDF-fil | Java
static void EmailToPdf(String emailPath) throws Exception
{
FileInputStream fstream=new FileInputStream(emailPath);
MailMessage eml = MailMessage.load(fstream);
//Save the Message to output stream in MHTML format
ByteArrayOutputStream emlStream = new ByteArrayOutputStream();
eml.save(emlStream, SaveOptions.getDefaultMhtml());
//Load the stream in Word document
LoadOptions lo = new LoadOptions();
lo.setLoadFormat(LoadFormat.MHTML);
Document doc = new Document(new ByteArrayInputStream(emlStream.toByteArray()), lo);
//Save to disc
doc.save("About Aspose.Pdf", SaveFormat.PDF);
//or Save to stream
ByteArrayOutputStream foStream = new ByteArrayOutputStream();
doc.save(foStream, SaveFormat.PDF);
}