テキスト文書の操作

この記事では、Aspose.Wordsを介してテキスト文書を操作するためにどのようなオプションが役立つかを学びます。 これは利用可能なオプションの完全なリストではなく、それらのいくつかを操作する例にすぎないことに注意してください。

双方向マークの追加

AddBidiMarksプロパティを使用して、プレーンテキスト形式でエクスポートするときに、各BiDiを実行する前に双方向マークを追加するかどうかを指定できます。 Aspose.Wordsテキスト内の各双方向の実行の前に、Unicode文字’右から左へのマーク'(U+200F)を挿入します。 このオプションは、プレーンテキスト形式にエクスポートするときにMS Wordファイル変換ダイアログの"双方向マークを追加"オプションに対応します。 アラビア語またはヘブライ語の編集言語のいずれかがMS Wordで追加されている場合にのみ、対話に表示されることに注意してください。

次のコード例は、AddBidiMarksプロパティを使用する方法を示しています。 このプロパティのデフォルト値はfalseです:

For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C
System::SharedPtr<Document> doc = System::MakeObject<Document>(inputDataDir + u"Input.docx");
System::SharedPtr<TxtSaveOptions> saveOptions = System::MakeObject<TxtSaveOptions>();
saveOptions->set_AddBidiMarks(true);
System::String outputPath = outputDataDir + u"WorkingWithTxt.AddBidiMarks.txt";
doc->Save(outputPath, saveOptions);

TXTの読み込み中にリスト項目を認識する

Aspose.Wordsは、テキストファイルのリスト項目をリスト番号またはプレーンテキストとしてドキュメントオブジェクトモデルにインポートできます。 DetectNumberingWithWhitespacesプロパティを使用すると、文書をプレーンテキスト形式からインポートするときに番号付きリスト項目を認識する方法を指定できます:

  • このオプションがtrue に設定されている場合、空白はリスト番号の区切り文字としても使用されます:アラビア語スタイル番号付けのリスト認識アルゴリズム(1。, 1.1.2.)空白とドット(".")記号の両方を使用します。
  • このオプションがfalseに設定されている場合、リスト認識アルゴリズムは、リスト番号がドット、右括弧、または箇条書きの記号で終わるときに、リスト"•", “*”, “-” または"o")。

次のコード例は、このプロパティを使用する方法を示しています:

For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C
System::SharedPtr<TxtLoadOptions> loadOptions = System::MakeObject<TxtLoadOptions>();
loadOptions->set_DetectNumberingWithWhitespaces(false);
System::SharedPtr<Document> doc = System::MakeObject<Document>(inputDataDir + u"LoadTxt.txt", loadOptions);
System::String outputPath = outputDataDir + u"WorkingWithTxt.DetectNumberingWithWhitespaces.docx";
doc->Save(outputPath);

TXTの読み込み中に先頭と末尾のスペースを処理する方法

TXTファイルの読み込み中に先頭と末尾のスペースを処理する方法を制御できます。 先頭のスペースはトリミング、保持、またはインデントに変換でき、末尾のスペースはトリミングまたは保持できます。

次のコード例は、TXTファイルのインポート中に先頭と末尾のスペースをトリミングする方法を示しています:

For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C
System::SharedPtr<TxtLoadOptions> loadOptions = System::MakeObject<TxtLoadOptions>();
loadOptions->set_LeadingSpacesOptions(TxtLeadingSpacesOptions::Trim);
loadOptions->set_TrailingSpacesOptions(TxtTrailingSpacesOptions::Trim);
System::SharedPtr<Document> doc = System::MakeObject<Document>(inputDataDir + u"LoadTxt.txt", loadOptions);
System::String outputPath = outputDataDir + u"WorkingWithTxt.HandleSpacesOptions.docx";
doc->Save(outputPath);

出力TXTでヘッダーとフッターをエクスポートする

出力TXT文書のヘッダーとフッターをエクスポートする場合は、ExportHeadersFootersModeプロパティを使用できます。 このプロパティは、ヘッダーとフッターをプレーンテキスト形式にエクスポートする方法を指定します。

ヘッダーとフッターをプレーンテキスト形式にエクスポートする方法を次のコード例に示します:

For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C
System::SharedPtr<Document> doc = System::MakeObject<Document>(inputDataDir + u"TxtExportHeadersFootersMode.docx");
System::SharedPtr<TxtSaveOptions> options = System::MakeObject<TxtSaveOptions>();
options->set_SaveFormat(SaveFormat::Text);
// All headers and footers are placed at the very end of the output document.
options->set_ExportHeadersFootersMode(TxtExportHeadersFootersMode::AllAtEnd);
doc->Save(outputDataDir + u"WorkingWithTxt.ExportHeadersFootersMode.AllAtEnd.txt", options);
// Only primary headers and footers are exported at the beginning and end of each section.
options->set_ExportHeadersFootersMode(TxtExportHeadersFootersMode::PrimaryOnly);
doc->Save(outputDataDir + u"WorkingWithTxt.ExportHeadersFootersMode.PrimaryOnly.txt", options);
// No headers and footers are exported.
options->set_ExportHeadersFootersMode(TxtExportHeadersFootersMode::None);
doc->Save(outputDataDir + u"WorkingWithTxt.ExportHeadersFootersMode.None.txt", options);

出力TXTでのリストインデントのエクスポート

Aspose.Wordsは、プレーンテキスト形式にエクスポートする際にリストレベルをインデントする方法を指定できるTxtListIndentationクラスを導入しました。 TxtSaveOptionを使用している間、ListIndentationプロパティは、リストレベルのインデントに使用する文字を指定し、一つのリストレベルごとにインデントとして使用する文字数を指定するために提供されます。

Characterプロパティのデフォルト値は'\0’で、インデントがないことを示します。 Countプロパティのデフォルト値は0で、インデントはありません。

タブ文字を使用する

次のコード例は、タブ文字を使用してリストレベルをエクスポートする方法を示しています:

For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C
System::SharedPtr<Document> doc = System::MakeObject<Document>(inputDataDir + u"input_document");
System::SharedPtr<TxtSaveOptions> options = System::MakeObject<TxtSaveOptions>();
options->get_ListIndentation()->set_Count(1);
options->get_ListIndentation()->set_Character(u'\t');
doc->Save(outputDataDir + u"WorkingWithTxt.UseTabCharacterPerLevelForListIndentation.txt", options);

スペース文字を使用する

次のコード例は、スペース文字を使用してリストレベルをエクスポートする方法を示しています:

For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C
System::SharedPtr<Document> doc = System::MakeObject<Document>(inputDataDir + u"input_document");
System::SharedPtr<TxtSaveOptions> options = System::MakeObject<TxtSaveOptions>();
options->get_ListIndentation()->set_Count(3);
options->get_ListIndentation()->set_Character(u' ');
doc->Save(outputDataDir + u"WorkingWithTxt.UseSpaceCharacterPerLevelForListIndentation.txt", options);

デフォルトのインデントを使用する

既定のインデントを使用してリストレベルをエクスポートする方法を次のコード例に示します:

For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C
System::SharedPtr<Document> doc1 = System::MakeObject<Document>(inputDataDir + u"input_document");
doc1->Save(outputDataDir + u"WorkingWithTxt.DefaultLevelForListIndentation1.txt");
//Document doc2 = new Document("input_document");
System::SharedPtr<Document> doc2 = System::MakeObject<Document>(inputDataDir + u"Input.docx");
System::SharedPtr<TxtSaveOptions> options = System::MakeObject<TxtSaveOptions>();
doc2->Save(outputDataDir + u"WorkingWithTxt.DefaultLevelForListIndentation2.txt", options);