Export EML to XPS via .NET
.NET API to Render EML to XPS on Windows, macOS, and Linux without using Word or Outlook
If you are a .NET developer looking to add EML to XPS conversion features inside your applications, Aspose.Total for .NET file format manipulation APIs are the way forward. By using Aspose.Email for .NET , you can convert EML file format to HTML. After that, by using Aspose.Words for .NET , you can render HTML to XPS.
C# API to Convert EML to XPS
- Open EML file using MailMessage class
- Convert EML to HTML by using Save method
- Load HTML by using Document class
- Save the document to XPS format using Save method and set Xps as SaveFormat
Get Started with .NET File Format APIs
Install from command line as nuget install Aspose.Total
or via Package Manager Console of Visual Studio with Install-Package Aspose.Total
.
Alternatively, get the offline MSI installer or DLLs in a ZIP file from downloads .
MailMessage message = MailMessage.Load("sourceFile.eml");
// save EML as a HTML
message.Save("HtmlOutput.html", SaveOptions.DefaultHtml);
// load HTML with an instance of Document
Document document = new Document("HtmlOutput.html");
// call save method while passing SaveFormat.Xps
document.Save("output.xps", SaveFormat.Xps);
Parse EML File via .NET
Before converting EML to XPS, if you want to make sure that you are converting the correct email, you can load EML document, parse it and have a look at your desired property. By using MapiMessage class of Aspose.Email for .NET API, you can get sender and recipients information. For example, you can check for a specific sender email for the conversion by using SenderName property.
var outlookMessageFile = MapiMessage.FromFile("message.eml");
// check for SenderName
if(outlookMessageFile.SenderName == "John"){
//proceed with conversion process
}
Restrict XPS Document Editing via .NET
While saving the document from EML to XPS, you might need to protect your output document. Sometimes you may need to limit the ability to edit a document and only allow certain actions with it. This can be useful to prevent other people from editing sensitive and confidential information in your document. Aspose.Words for .NET API, enables you to control the way you restrict the content using the ProtectionType enumeration parameter. You can set your document to read-only by using the following lines of code.
Document document = new Document("HtmlOutput.html");
// apply document protection and set protection password
doc.Protect(ProtectionType.ReadOnly, "password");
// call save method while passing SaveFormat.Xps
document.Save("output.xps", SaveFormat.Xps);
Other Conversion Options
EML What is EML File Format?
EML file format represents email messages saved using Outlook and other relevant applications. Almost all emailing clients support this file format for its compliance with RFC-822 Internet Message Format Standard. Microsoft Outlook is the default software for opening EML message types. EML files can be used for saving to disc as well as sending out to recipients using communication protocols.
Read MoreXPS What is XPS File Format?
An XPS file represents page layout files that are based on XML Paper Specifications created by Microsoft. It was developed as a replacement of EMF file format and is similar to PDF file format, but uses XML in layout, appearance, and printing information of a document. It is, in fact, more justified to say that XPS is an attempt on PDF, but couldn’t get enough popularity as owned by PDF for many reasons. Microsoft provides XPS Document Writer by default from Windows 7 onwards for the creation of XPS files. XPS files can be generated by selecting the Microsoft XPS Document Writer as printer while printing the document.
Read More