Как разделить документ Word по разделам, используя C # и Open XML SDK? - PullRequest
2 голосов
/ 07 февраля 2011

Я хочу разделить документ Word по разделам программно, используя C # и Open XML SDK. Мы уже разбиваем документ Word на абзацы. Теперь мы хотим сделать одну и ту же операцию для каждого раздела. Пожалуйста, если у вас есть знания в этой области, пожалуйста, дайте мне знать, чтобы решить эту проблему.

1 Ответ

6 голосов
/ 14 февраля 2011

Знать, где применяются разделы, немного странно. Вместо того, чтобы заключать абзацы в разделы, которые облегчили бы нам идентификацию, разделы применяются ко всему контенту, найденному перед ними.

Найдите элементы SectionProperties в ParagraphProperties абзаца, именно они определяют разрывы разделов. Когда вы найдете определение SectionProperties, все содержимое между последним определением SectionProperties и этим новым определением группируется как раздел. Например, рассмотрим следующее:

Paragraph1 // Section 1

Paragraph2 // Section 1

SectionProperties (Section 1) // Defines what section 1 is like

Paragraph3 // Section 2

Paragraph4 // Section 2

SectionProperties (Section 2) // Defines what section 2 is like

Paragraph5 // Section 3

Final SectionProperties // Defines what Section 3 is like. 
// This final definition exists within the Body tag itself.
// Other SectionProperties exist under Paragraph Properties

Также помните, что последние SectionProperties не находятся внутри абзаца, они находятся на корневом уровне внутри тега Body. К сожалению, насколько мне известно, в SDK нет ярлыков для расчета того, к какому разделу относится абзац. Отсюда вы сможете получить быструю систему расчета сечений.

...