EメールをODTにエクスポートするC++API

Microsoft WordやOutlookを必要とせずに、C++アプリケーション内でEMLをODTに変換します

 

アプリケーション内に電子メール変換機能を追加しようとしているC++開発者ですか? Aspose.Eml for C++ を使用すると、EMLファイル形式をHTMLに変換できます。その後、 Aspose.Words for C++ APIを使用して、HTMLをODTにエクスポートできます。どちらのAPIも Aspose.TotalforC++ パッケージに含まれています。

EMLをODTに変換するC++API

  1. MailMessage クラスリファレンスを使用してEMLファイルを開きます
  2. Save メンバー関数を使用してEMLをHTMLに変換します
  3. ドキュメント クラスを使用してHTMLをロードします
  4. Save メソッドを使用してドキュメントをODT形式で保存し、OdtをSaveFormatとして設定します

変換要件

コマンドラインからnuget install Aspose.Total.Cppとしてインストールするか、VisualStudioのパッケージマネージャーコンソールからInstall-PackageAspose.Total.Cppを使用してインストールします。

または、 ダウンロード からオフラインMSIインストーラーまたはDLLをZIPファイルで取得します。

// 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 Odt as save format
doc->Save(u"convertedFile.Odt");

C++を介してEMLファイルを解析する

EMLをODTに変換できるだけでなく、EMLドキュメントを読み取ったり、操作したり、解析したりすることもできます。 Aspose.Eml for C++ APIのMapiMessageクラスを使用して、電子メールの件名、アドレス、本文、受信者情報を取得できます。たとえば、get_SenderEmlAddress()プロパティを使用して、変換用の特定の送信者の電子メールを確認できます。

// 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_SenderEmlAddress());
// 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());

ODTファイル形式の編集を制限するC++API

EMLからODTにドキュメントをエクスポートするときに、アプリにドキュメント保護機能を追加することもできます。ドキュメントに保護方法を適用するだけなので、ドキュメントに保護を追加するのは簡単なプロセスです。保護タイプを読み取り専用に設定して、ユーザーによるドキュメントの編集を制限できます。

// 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.Odt");

EML の変換オプションを C++ で探索

EML を BMP に変換 (ビットマップ画像ファイル)
EML を DOCM に変換 (Microsoft Word 2007 マルコ ファイル)
EML を DOCX に変換 (Office 2007以降のWord文書)
EML を DOC に変換 (Microsoft Wordバイナリ形式)
EML を DOTM に変換 (Microsoft Word 2007+ テンプレート ファイル)
EML を DOTX に変換 (Microsoft Wordテンプレートファイル)
EML を DOT に変換 (Microsoft Wordテンプレートファイル)
EML を EMF に変換 (拡張されたメタファイル形式)
EML を EPUB に変換 (電子書籍ファイルを開く)
EML を FLATOPC に変換 (Microsoft Word 2003 ワードプロセッサML)
EML を GIF に変換 (グラフィカル交換フォーマット)
EML を PNG に変換 (ポータブルネットワークグラフィックス)
EML を JPEG に変換 (共同写真専門家グループ)
EML を MD に変換 (マークダウン言語)
EML を OTT に変換 (OpenDocument テンプレート)
EML を PCL に変換 (プリンターコマンド言語)
EML を PDF に変換 (ポータブルドキュメントフォーマット)
EML を PNG に変換 (ポータブルネットワークグラフィックス)
EML を PS に変換 (ポストスクリプトファイル)
EML を RTF に変換 (リッチテキスト形式)
EML を SVG に変換 (スカラー ベクター グラフィックス)
EML を TIFF に変換 (タグ付き画像ファイル形式)
EML を WORDML に変換 (Microsoft Word 2003 ワードプロセッサML)
EML を DOCX に変換 (Office 2007以降のWord文書)
EML を XPS に変換 (XML 用紙の仕様)