ذخیره یک MSG به صورت PDF
Contents
[
Hide
]
این مقاله نشان میدهد چگونه یک پیام ایمیل را با استفاده از Aspose.Email به PDF تبدیل کنید. Aspose.Email برای جاوا ویژگیهای Microsoft Outlook را پشتیبانی میکند و نمیتواند تبدیل مستقیم به PDF انجام دهد. برای غلبه بر این، نمونههای این مقاله از Aspose.Email برای تبدیل پیام ایمیل به جریان MHTML استفاده میکنند و سپس از Aspose.Words برای جاوا برای بارگذاری جریان MHTML و ذخیره آن به عنوان PDF استفاده میشود.
یک پیام ایمیل میتواند حاوی پیوستها نیز باشد. از آنجا که هر پیوست میتواند نوع رسانه متفاوتی داشته باشد، Aspose.Email این پیوستها را هنگام تبدیل به MHTML نادیده میگیرد؛ یعنی فقط تصاویر درونمتنی در پیام بخشی از MHTML خواهند بود و هر پیوست معمولی نادیده گرفته میشود.
تبدیل پیام ایمیل به PDF
کد زیر نشان میدهد که چگونه پیام ایمیل را با استفاده از Aspose.Email به همراه Aspose.Words برای جاوا به PDF تبدیل کنید. این کار شامل مراحل زیر است:
- بارگذاری پیام ایمیل با استفاده از MailMessage
- ذخیره پیام ایمیل به MemoryStream به صورت MHTML
- بارگذاری جریان با استفاده از Aspose.Words
- ذخیره پیام به عنوان PDF
پیام ایمیل منبع به شرح زیر قابل مشاهده است:
|
| | :- | |Figure: Source MSG File |
|
| | :- | |Figure: Converted PDF File | 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);
}