C++ API to Export EML to XPS

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

EML Conversion via Python EML Conversion via C# .NET EML Conversion via Java EML Conversion in Android Apps

 

Why to Convert

As a C++ developer, you may need to add email conversion features inside your applications. Email conversion is a process of transforming emails from one format to another. This process is useful for archiving emails, migrating emails from one platform to another, or for creating backups.

How Aspose.Total helps for eml to xps conversion

Aspose.Total for C++ is a comprehensive suite of APIs that can help you with email conversion. It includes two APIs, Aspose.Email for C++ and Aspose.Words for C++. Aspose.Email for C++ can be used to convert EML file format to HTML. After that, Aspose.Words for C++ API can be used to export HTML to XPS. Both APIs come under Aspose.Total for C++ package.

Using Aspose.Email for C++, you can easily convert EML to HTML. The API provides a simple and straightforward way to convert emails from EML to HTML format. It also supports various other email formats such as MSG, MHTML, and EMLX. After converting EML to HTML, you can use Aspose.Words for C++ to export HTML to XPS. The API provides a simple and efficient way to convert HTML to XPS. It also supports various other document formats such as DOC, DOCX, and PDF.

Aspose.Total for C++ is a comprehensive suite of APIs that can help you with email conversion. It includes two APIs, Aspose.Email for C++ and Aspose.Words for C++. Aspose.Email for C++ can be used to convert EML file format to HTML. After that, Aspose.Words for C++ API can be used to export HTML to XPS. Both APIs come under Aspose.Total for C++ package. With the help of these APIs, you can easily convert emails from EML to XPS format. The APIs provide a simple and straightforward way to convert emails from one format to another. Moreover, they also support various other email and document formats.

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");

Explore EML Conversion Options with C++

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