V tomto jednoduchém tutoriálu se naučíme, jak převést Outlook Email na PDF pomocí C# spolu s podrobnými kroky ke konfiguraci prostředí. Uvidíte, že pro převod MSG do PDF lze použít API založené na C# a tento příklad můžete použít v kterémkoli z běžně dostupných operačních systémů, jako je Windows, macOS nebo Linux.
Kroky k převodu e-mailu aplikace Outlook do PDF pomocí C#
- Nainstalujte knihovny Aspose.Email a Aspose.Words z nástroje správce balíčků NuGet v sadě Visual Studio
- Inicializací objektu třídy MailMessage načtete e-mailový soubor ve formátu MSG nebo EML
- Uložte načtený soubor e-mailu (MSG/EML) jako stream do přechodného formátu MHTML
- Nastavte LoadFormat na MHTML a inicializujte objekt třídy Document pro načtení MHTML vytvořeného v předchozím kroku
- Pomocí metody Uložit v C# se provede převod EML do PDF
Pomocí výše uvedených kroků v C# MSG do PDF je vyvinuta aplikace pro převod. V prvním kroku načteme soubor MSG nebo EML pomocí objektu třídy MailMessage. Poté načtený e-mailový soubor uložíme do streamu ve středním formátu MHTML. V následujících krocích načteme prostřední MHTML pomocí objektu třídy Document. Nakonec pro převod EML do PDF bude použita metoda C# Save a PDF bude uloženo na disk.
Kód pro převod e-mailu aplikace Outlook do PDF pomocí C#
using System; | |
using System.IO; | |
using Aspose.Email; | |
using Aspose.Words; | |
namespace WordKB | |
{ | |
public class EmailToPDF | |
{ | |
public static void EmailToPDFExample() | |
{ | |
// Applying product license to read the Email (MSG/EML) file | |
Aspose.Email.License EmailLic = new Aspose.Email.License(); | |
EmailLic.SetLicense("Aspose.Total.lic"); | |
// Applying product license to convert MHTML to PDF | |
Aspose.Words.License WordsLic = new Aspose.Words.License(); | |
WordsLic.SetLicense("Aspose.Total.lic"); | |
using (MemoryStream ms = new MemoryStream()) | |
{ | |
// Load the MSG or EML file | |
MailMessage message = MailMessage.Load("Message.msg"); | |
message.Save(ms, Aspose.Email.SaveOptions.DefaultMhtml); | |
// Resest the Memory stream position | |
ms.Position = 0; | |
// Instantiate LoadOptions to set the LoadFormat to Mhtml | |
Aspose.Words.Loading.LoadOptions loadOptions = new Aspose.Words.Loading.LoadOptions(); | |
loadOptions.LoadFormat = LoadFormat.Mhtml; | |
// Instantiate Document class object to load the MTHML from MemoryStream | |
Aspose.Words.Document document = new Aspose.Words.Document(ms, loadOptions); | |
// Instantiate PdfSaveOptions class object | |
var saveOptions = new Aspose.Words.Saving.PdfSaveOptions(); | |
// Save the MHTML to PDF using C# | |
document.Save("SaveEmailAsPDF.pdf", saveOptions); | |
} | |
} | |
} | |
} |
Ve výše uvedeném příkladu se pro převod EML do PDF používá C# s pomocí jednoduchých volání API a dobře definovaných kroků. Výše uvedený příklad lze použít pro e-mailové soubory ve formátech MSG a EML. Výstupní PDF můžete přizpůsobit nastavením vlastností, jako je ColorMode, Compliance, ImageCompression a JpegQuality.
Jak převést MSG do PDF založené na C# API je prozkoumáno v tomto článku. Pokud hledáte, jak posílat e-maily v C#, přečtěte si článek na jak poslat email v C#.