C++ API to Export EML to RTF

Transform EML to RTF 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 RTF. Both APIs come under Aspose.Total for C++ package.

C++ API to Convert EML to RTF

  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 RTF format using Save method and set Rtf 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 Rtf as save format

Parse EML File via C++

Not only you can convert your EML to RTF, 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 RTF File Format Editing

You can also add document protection features in your app while exporting the document from EML to RTF. 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.

Other Conversion Options

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

RTF What is RTF File Format?

Introduced and documented by Microsoft, the Rich Text Format (RTF) represents a method of encoding formatted text and graphics for use within applications. The format facilitates cross-platform document exchange with other Microsoft Products, thus serving the purpose of interoperability. This capability makes it a standard of data transfer between word processing software and, hence, contents can be transferred from one operating system to another without losing document formatting. The file format specifications are available by Microsoft for public download and can be referred to from developer&rsquo;s perspective.

Read More