Запись текста в документ XPS

У меня есть элемент управления WPF с несколькими текстовыми полями. Количество элементов управления варьируется в зависимости от того, что пользователь делает в программе. Что мне нужно сделать, так это взять текст из текстовых полей и записать его в документ XPS. На самом деле вопрос сводится к следующему: «Как мне записать строки текста в документ XPS? Кто-нибудь знает библиотеку, которую я могу включить, или как лучше всего это сделать?


person user3258394    schedule 11.12.2015    source источник
comment
Почему не FlowDocument?   -  person paparazzo    schedule 11.12.2015
comment
Конечным результатом является запись XPS-документа в PDF, и у меня уже есть рабочая среда для этого. Хотя потоковый документ может быть больше похож на то, что мне нужно, но я никогда не использовал его раньше. Должен ли я изучить это вместо XPS?   -  person user3258394    schedule 11.12.2015
comment
Может FlowDocument в XPS. Я не знаю, как писать напрямую в XPS.   -  person paparazzo    schedule 11.12.2015


Ответы (1)


Вот простейший пример, который я сохранил в своем OneNote некоторое время назад (извините, я не помню источник):

PrintDocumentImageableArea area = null;
XpsDocumentWriter wr = PrintQueue.CreateXpsDocumentWriter(ref area);

var text = new TextBlock() {Text = "Hello there"};
text.Margin = new Thickness(area.OriginWidth, area.OriginHeight, 0, 0);

Size outputSize = new Size(area.MediaSizeWidth, area.MediaSizeHeight);
text.Measure(outputSize);
text.Arrange(new Rect(outputSize));

text.UpdateLayout();

wr.Write(text);
person Filip    schedule 11.12.2015