حفظ البريد الإلكتروني كملف PDF
تُظهر هذه المقالة كيفية تحويل رسالة بريد إلكتروني إلى PDF باستخدام Aspose.Email. لا يتعامل Aspose.Email للـ .NET مع بروتوكولات الشبكة وميزات Outlook ولا يمكنه إجراء تحويل مباشر إلى PDF. لتجاوز ذلك، تستخدم العينات في هذه المقالة Aspose.Email لتحويل رسالة البريد إلى تدفق MHTML ثم تستخدم Aspose.Words للـ .NET لتحميل تدفق MHTML وحفظه كـ PDF. قد تحتوي رسالة البريد على مرفقات أيضًا. بما أن كل مرفق قد يكون من نوع وسائط مختلف، يتجاهل Aspose.Email هذه المرفقات أثناء التحويل إلى MHTML؛ أي أن الصور المضمنة فقط ستكون جزءًا من MHTML، وأي مرفقات عادية سيتجاهلها.
تحويل رسالة البريد الإلكتروني إلى PDF
توضح الشيفرة التالية تحويل رسائل البريد الإلكتروني إلى PDF باستخدام Aspose.Email بالتعاون مع Aspose.Words للـ .NET. تشمل الخطوات التالية:
- حمِّل رسالة البريد الإلكتروني باستخدام MailMessage
- احفظ رسالة البريد إلى MemoryStream كملف MHTML
- حمّل التدفق باستخدام Aspose.Words
- احفظ الرسالة كملف PDF
يمكن رؤية رسالة البريد الأصلية كما يلي:

الملف PDF المحوَّل كما هو موضح في الصورة التالية:

يظهر المقتطف البرمجي التالي كيفية تحويل رسائل البريد الإلكتروني إلى PDF.
string dataDir = RunExamples.GetDataDir_KnowledgeBase();
MailMessage mailMsg = MailMessage.Load(dataDir + "message3.msg");
MemoryStream ms = new MemoryStream();
mailMsg.Save(ms, Aspose.Email.SaveOptions.DefaultMhtml);
// create an instance of LoadOptions and set the LoadFormat to Mhtml
var loadOptions = new Aspose.Words.Loading.LoadOptions();
loadOptions.LoadFormat = LoadFormat.Mhtml;
// create an instance of Document and load the MTHML from MemoryStream
var document = new Aspose.Words.Document(ms, loadOptions);
// create an instance of HtmlSaveOptions and set the SaveFormat to Html
var saveOptions = new Aspose.Words.Saving.PdfSaveOptions();
document.Save(dataDir + "SaveEmailAsPDF_out.pdf", saveOptions);