บันทึกอีเมลเป็น PDF
บทความนี้แสดงวิธีการแปลงข้อความอีเมลเป็น PDF ด้วย Aspose.Email Aspose.Email สำหรับ .NET จัดการกับโปรโตคอลเครือข่ายและคุณลักษณะของ Microsoft Outlook และไม่สามารถทำการแปลงโดยตรงเป็น PDF ได้ เพื่อแก้ไขปัญหา ตัวอย่างในบทความนี้ใช้ Aspose.Email เพื่อแปลงข้อความอีเมลเป็นสตรีม MHTML แล้วใช้ Aspose.Words สำหรับ .NET เพื่อโหลดสตรีม MHTML นั้นและบันทึกเป็น PDF ข้อความอีเมลอาจมีไฟล์แนบด้วย เนื่องจากแต่ละไฟล์แนบอาจเป็นสื่อประเภทต่างกัน Aspose.Email จะละเลยไฟล์แนบเหล่านั้นขณะแปลงเป็น MHTML กล่าวคือ จะรวมเฉพาะภาพ inline ในข้อความเป็นส่วนของ 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);