Работа с диапазонами

Если вы работали с Microsoft Word Automation, то, вероятно, знаете, что одним из основных инструментов для изучения и изменения содержимого документа является объект Range. Range - это своего рода “окно” в содержимое и форматирование документа.

Aspose.Words также имеет класс Range и спроектирован так, чтобы выглядеть и действовать аналогично Range в Microsoft Word. Хотя Range не может охватывать произвольную часть документа и не содержит Start и End, вы можете получить доступ к диапазону, охватываемому любым узлом документа, включая сам Document. Другими словами, каждый узел имеет свой собственный диапазон. Объект Range позволяет вам получать доступ к тексту, закладкам и полям формы в пределах диапазона и изменять их.

Извлечение обычного текста

Используйте свойство Text для извлечения простого неформатированного текста из диапазона.

В следующем примере кода показано, как получить простой неформатированный текст из диапазона:

For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C
// The path to the documents directory.
System::String inputDataDir = GetInputDataDir_WorkingWithRanges();
System::SharedPtr<Document> doc = System::MakeObject<Document>(inputDataDir + u"Document.doc");
System::String text = doc->get_Range()->get_Text();

Удаление текста

Range позволяет удалить все символы из диапазона, вызвав команду Delete.

В следующем примере кода показано, как удалить все символы из диапазона:

For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C
// The path to the documents directory.
System::String inputDataDir = GetInputDataDir_WorkingWithRanges();
System::SharedPtr<Document> doc = System::MakeObject<Document>(inputDataDir + u"Document.doc");
doc->get_Sections()->idx_get(0)->get_Range()->Delete();