ImportFormatMode

ImportFormatMode enumeration

Указывает, как форматирование объединяется при импорте содержимого из другого документа.

public enum ImportFormatMode

Ценности

ИмяЦенностьОписание
UseDestinationStyles0Использовать стили документа назначения и копировать новые стили. Это опция по умолчанию.
KeepSourceFormatting1Скопируйте все необходимые стили в целевой документ, при необходимости создайте уникальные имена стилей.
KeepDifferentStyles2Копировать только те стили, которые отличаются от стилей в исходном документе.

Примечания

При копировании узлов из одного документа в другой этот параметр определяет, как разрешается formatting , когда оба документа имеют стиль с одинаковым именем, но разным форматированием.

Форматирование решается следующим образом:

  1. Встроенные стили сопоставляются с использованием идентификатора стиля, независимого от локали. Определенные пользователем стили сопоставляются с использованием имени стиля, чувствительного к регистру.
  2. Если соответствующий стиль не найден в целевом документе, style (и все стили, на которые он ссылается) копируются в целевой document , а импортированные узлы обновляются для ссылки на новый стиль.
  3. Если соответствующий стиль уже существует в целевом документе, то, что произойдет , зависит отРежимФорматаИмпорта параметр переданный to ImportNode , как описано ниже.

При использованииUseDestinationStyles опция, если соответствующий стиль уже существует в целевом документе, стиль не копируется, а импортированные узлы обновляются для ссылки на существующий стиль.

Недостаток использованияUseDestinationStylesзаключается в том, что импортированный текст может выглядеть иначе в целевом документе по сравнению с исходным документом. Например, стиль «Заголовок 1» в исходном документе использует шрифт Arial 16pt, а стиль «Заголовок 1» в целевом документе использует шрифт Times New Roman 14pt. При импорте текста стиля «Заголовок 1» без другого прямого форматирования он будет выглядеть иначе в целевом документе.

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

Недостаток использованияKeepSourceFormattingзаключается в том, что если вы выполните несколько импортов, то в конечном документе может оказаться много стилей, и это может затруднить использование согласованного форматирования стилей в Microsoft Word для этого документа.

С использованиемKeepDifferentStyles опция позволяет повторно использовать целевые стили , если предоставляемое ими форматирование идентично стилям в исходном документе. Если стиль в целевом документе отличается от исходного, то он импортируется.

Примеры

Показывает, как вставить документ в другой документ.

Document doc = new Document(MyDir + "Document.docx");

DocumentBuilder builder = new DocumentBuilder(doc);
builder.MoveToDocumentEnd();
builder.InsertBreak(BreakType.PageBreak);

Document docToInsert = new Document(MyDir + "Formatted elements.docx");

builder.InsertDocument(docToInsert, ImportFormatMode.KeepSourceFormatting);
builder.Document.Save(ArtifactsDir + "DocumentBuilder.InsertDocument.docx");

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