Bir MSG'yi PDF olarak kaydetme
Contents
[
Hide
]
Bu makale, Aspose.Email kullanarak bir e-posta mesajını PDF’ye nasıl dönüştüreceğinizi gösterir. Aspose.Email for Java, Microsoft Outlook özellikleriyle çalışır ve doğrudan PDF’ye dönüşümü yapamaz. Bunu aşmak için, bu makaledeki örnekler e-posta mesajını önce MHTML akışına dönüştürmek için Aspose.Email’i, ardından MHTML akışını yükleyip PDF olarak kaydetmek için Aspose.Words for Java’yı kullanır.
Bir e-posta mesajı ekler de içerebilir. Her ek farklı bir medya türünde olabileceği için, Aspose.Email bu ekleri MHTML’ye dönüştürürken yok sayar; yani mesajdaki yalnızca satır içi görüntüler MHTML’nin bir parçası olur ve normal ekler göz ardı edilir.
E-posta mesajını PDF’ye dönüştür
Aşağıdaki kod, Aspose.Email’i Aspose.Words for Java ile birleştirerek e-posta mesajını PDF’ye dönüştürmeyi gösterir. Bu şu adımları içerir:
- MailMessage kullanarak e-posta mesajını yükle
- E-posta mesajını MemoryStream’e MHTML olarak kaydet
- Akışı Aspose.Words kullanarak yükle
- Mesajı PDF olarak kaydet
Kaynak e-posta mesajı aşağıdaki gibi görülebilir:
|
| | :- | |Şekil: Kaynak MSG Dosyası |
|
| | :- | |Şekil: Dönüştürülmüş PDF Dosyası | 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);
}