Проблема в том, что RTF имеет некоторую (но не обязательно всю) информацию о форматировании в глобальном заголовке.Чтобы разбить текст RTF так, чтобы результаты снова были действительными в формате RTF с примененным форматированием, вам, по сути, нужно знать, где находится информация заголовка, и реплицировать ее по разделениям.
Есть два способа сделать это:
- Написать анализатор RTF
- Использовать существующий синтаксический анализатор RTF
(1) выполнимо, но это займет время.К счастью, анализаторы RTF уже существуют, например, этот в CodeProject .
В качестве альтернативы, вы также можете загрузить текст RTF в RichTextBox
, а затем выполнить поискразделенный текст "[BreakPage]"
внутри RichTextBox
, программно выберите первую и вторую часть и получите текст RTF, используя свойство SelectedRtf
.