Silverlight имеет встроенную поддержку растровой печати начиная с версии 4. Хорошую информацию вы можете найти в блоге Шона:
http://wildermuth.com/2009/11/27/Silverlight_4_s_Printing_Support
Как я уже сказал, это только на основе растровых изображений, с недостатками, которые идут с растровыми изображениями (без надлежащего масштабирования и т. Д.).
Еще один хороший обходной путь, который мне нравится, - это преобразование данных, которые вы хотите распечатать, в PDF на стороне сервера. Вы можете разместить веб-службу на сервере, отправить данные для печати с клиента на сервер через эту службу, а затем на сервере использовать, например, Acrobat Distiller или любая другая утилита для печати PDF, которая вам нравится, для создания PDF-файла. Когда генерация PDF завершена, сервер отправляет клиенту URL-адрес, который указывает на вновь созданный PDF-файл. В приложении Silverlight вы можете просто открыть этот URL, например, в новом окне.
Однако это скорее экспорт PDF, а не печать, поскольку PDF будет открываться только на стороне клиента, но не печататься автоматически.
Создание PDF на стороне клиента, в отличие от этого, по умолчанию невозможно в Silverlight. Однако существуют сторонние библиотеки, которые могут это сделать.
Ура, Алекс