C++ API to Export EML to XPS

Transform EML to XPS within C++ application without requiring Microsoft Word or Outlook

 

Are you are a C++ developer looking to add email conversion features inside your applications? Using Aspose.Email for C++ you can convert EML file format to HTML. After that, by using Aspose.Words for C++ API, you can export HTML to XPS. Both APIs come under Aspose.Total for C++ package.

C++ API to Convert EML to XPS

  1. Open EML file using MailMessage class reference
  2. Convert EML to HTML by using Save member function
  3. Load HTML by using Document class
  4. Save the document to XPS format using Save method and set Xps as SaveFormat

Get Started with C++ File Format APIs

Install from command line as nuget install Aspose.Total.Cpp or via Package Manager Console of Visual Studio with Install-Package Aspose.Total.Cpp.

Alternatively, get the offline MSI installer or DLLs in a ZIP file from downloads .

// load the EML file to be converted
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"sourceFile.eml");
// save EML as a HTML 
msg->Save(u"HtmlOutput.html", SaveOptions::get_DefaultHtml());  
// load HTML with an instance of Document
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"HtmlOutput.html");
// call save method while passing Xps as save format
doc->Save(u"convertedFile.Xps");

Parse EML File via C++

Not only you can convert your EML to XPS, but you can read, manipulate, and parse EML document. You can get subject, address, body, recipients information of the email by using MapiMessage class of Aspose.Email for C++ API. For example, you can check for a specific sender email for the conversion by using get_SenderEmailAddress() property.

// create an instance of MapiMessage from file
System::SharedPtr<MapiMessage> msg = MapiMessage::FromFile(dataDir + L"message.eml");
// get subject
System::Console::WriteLine(System::String(L"Subject:") + msg->get_Subject());
// get from address
System::Console::WriteLine(System::String(L"From:") + msg->get_SenderEmailAddress());
// get body
System::Console::WriteLine(System::String(L"Body") + msg->get_Body());
// get recipients information
System::Console::WriteLine(System::String(L"Recipient: ") + msg->get_Recipients());

C++ API to Restrict XPS File Format Editing

You can also add document protection features in your app while exporting the document from EML to XPS. Adding protection to your document is a simple process, as all you need to do is apply the protection method to your document. You can set protection type to ReadOnly to restrict the user to edit the document.

// create a new document and protect it with a password.
auto doc = System::MakeObject<Document>();
// apply Document Protection.
doc->Protect(ProtectionType::ReadOnly, u"password");
// save the document.
doc->Save(u"DocumentProtection.PasswordProtection.Xps");

Other Conversion Options

EML TO DOTM (Microsoft Word 2007+ Template File)
EML TO PNG (Portable Network Graphic)
EML TO PDF (Portable Document Format)
EML TO PCL (Printer Command Language Document)
EML TO EMF (Enhanced Metafile Format)
EML TO JPEG (Joint Photographic Expert Group)
EML TO PS (PostScript File)
EML TO DOTX (Microsoft Word Template File )
EML TO OTT (OpenDocument Standard Format)
EML TO EPUB (Open eBook File)
EML TO DOT (Microsoft Word Template Files)
EML TO DOCM (Microsoft Word 2007 Marco File)
EML TO SVG (Scalar Vector Graphics)
EML TO ODT (OpenDocument Text File Format)
EML TO WORDML (Microsoft Word 2003 WordprocessingML)
EML TO GIF (Graphical Interchange Format)
EML TO RTF (Rich Text Format)
EML TO MD (Markdown Language)
EML TO DOCX (Office 2007+ Word Document)
EML TO BMP (Bitmap Image File)
EML TO TIFF (Tagged Image File Format)
EML TO DOC (Microsoft Word Binary Format)

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 More

XPS 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&rsquo;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