Печать текста из приложения silverlight - PullRequest
2 голосов
/ 12 августа 2010

Я пытаюсь распечатать отчет (просто текст в столбцах) из моего приложения Silverlight 4. Единственный способ, о котором я знаю, - это использовать PrintDocument и установить для PageVisual элемент каркаса, показывающий отчет. Однако это приводит к безумно крупному заданию на печать (например, 120 МБ). Это не то, что хочет мой клиент. Есть ли другое решение?

Ответы [ 3 ]

2 голосов
/ 23 марта 2011

Проблема с Silverlight 4 заключается в том, что все, что вы собираетесь распечатать, создается как растровое изображение с разрешением 600 точек на дюйм.Это объясняет большой размер работы, которую вы видите.Именно поэтому текст из Silverlight может выглядеть очень размытым по сравнению с тем, что вы ожидаете получить от результатов.Silverlight 5 решит эту проблему с помощью векторной печати Postscript , но сейчас вы сталкиваетесь с реальностью, что без сторонних решений вы фактически застряли с готовыми ограничениями или с использованием HTML.

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

Хорошим сторонним решением для создания отчетов, но, возможно, больше, чем нужно, является использование служб Reporting Services.в сочетании с этим продуктом: http://www.perpetuumsoft.com/Silverlight-Viewer-for-Reporting-Services.aspx?lang=en

1 голос
/ 22 марта 2011

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

Я думаю, что PrintDocument и PageVisual - единственный способ печати изнутри SL.

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

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

0 голосов
/ 22 марта 2011

Вы можете преобразовать свой текст в изображение, а затем распечатать изображение .. мб это вам поможет

http://www.andybeaulieu.com/Home/tabid/67/EntryID/161/Default.aspx http://www.snowball.be/Printing+In+Silverlight+3+Yes+We+Can.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...