JoinRunsWithSameFormatting

Document.JoinRunsWithSameFormatting method

Объединяет фрагменты с одинаковым форматированием во всех абзацах документа.

public int JoinRunsWithSameFormatting()

Возвращаемое значение

Количество выполненных соединений. КогдаН смежные прогоны объединяются, они считаютсяН - 1 присоединяется.

Примечания

Это метод оптимизации. Некоторые документы содержат смежные прогоны с одинаковым форматированием. Обычно это происходит, если документ интенсивно редактировался вручную. Вы можете уменьшить размер документа и ускорить дальнейшую обработку, объединив эти прогоны.

Операция проверяет каждыйParagraph узел в документе для смежныхRun узлы с идентичными свойствами. Он игнорирует уникальные идентификаторы, используемые для отслеживания сеансов редактирования создания и изменения run . Первый запуск в каждой последовательности соединения накапливает весь текст. Оставшиеся запуски удаляются из документа.

Примеры

Показывает, как объединять фрагменты в документе, чтобы сократить количество ненужных фрагментов.

// Открываем документ, содержащий смежные фрагменты текста с одинаковым форматированием,
// что обычно происходит, если мы редактируем один и тот же абзац несколько раз в Microsoft Word.
Document doc = new Document(MyDir + "Rendering.docx");

// Если какое-либо количество этих серий находится рядом и имеет одинаковое форматирование,
// тогда документ можно упростить.
Assert.AreEqual(317, doc.GetChildNodes(NodeType.Run, true).Count);

// Объедините такие запуски с этим методом и проверьте количество объединений запусков, которые будут иметь место.
Assert.AreEqual(121, doc.JoinRunsWithSameFormatting());

// Количество объединений и количество запусков после объединения
// следует суммировать количество запусков, которые у нас были изначально.
Assert.AreEqual(196, doc.GetChildNodes(NodeType.Run, true).Count);

Смотрите также