Печать элементов WPF на нескольких страницах - PullRequest
4 голосов
/ 24 июля 2009

У меня есть ItemsCollection, размещенный внутри ScrollViewer, который достаточно большой, чтобы охватить несколько страниц при печати. До сих пор мне удалось напечатать одну страницу, используя PrintVisual(itemsControl), но из того, что я прочитал, мне нужно по-разному подходить к печати одного элемента управления на нескольких страницах. Кто-нибудь может указать мне правильное направление?

Спасибо!

Ответы [ 2 ]

1 голос
/ 10 ноября 2010

Что вам нужно сделать, это вырезать.

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

Процедура: Вам необходимо преобразовать визуал в RenderTargetBitmap с необходимой кодировкой.

Затем, используя CroppedBitmap, вы можете обрезать растровое изображение в требуемом измерении. Затем сохраните эти клипы в List<Image> примерно так. Затем повторите и распечатайте их, используя логику печати. Если вы хотите образец, я постараюсь предоставить. Я думаю, что это очень старый пост. Надеюсь, это будет полезно для кого-то в будущем.

0 голосов
/ 20 декабря 2010

Проверьте эту реализацию Отчеты WPF в CodePlex. Я использовал их в одном из моих приложений, которое именно это и делает. Если вы хотите знать, как .. просто посмотрите на код.

...