Как распечатать данные формы C # - PullRequest
1 голос
/ 17 марта 2010

Я искал в Stackoverflow и в Google и нашел много способов, как печатать вещи в C #.

Лучший способ для меня - заполнить пустые белые окна формами элементов label, textbox и picturebox ираспечатайте это как форму окна.Этот способ очень плох, потому что он печатает с разрешением 72 DPI и не подходит для печати на нескольких страницах.

Следующий способ, который я нашел полезным, это использовать iTextSharp, но есть проблема, что iTextSharp генерирует только PDF-s, и вы должны открыть его в средстве просмотра PDF и распечатать оттуда.

Мне нравится этот способ мышления, когда я создаю абзац, а затем заполняю его текстом и графикой, поэтому я нашел эту тему http://www.devarticles.com/c/a/C-Sharp/Printing-Using-C-sharp/ где обсуждается, как создать свой собственный механизм печати на C #, что-то вроде iTextSharp, но очень легкий ...

Теперь, когда я сказал это, я хочу знать, есть ли готовыйиспользовать механизм печати, похожий на iTextSharp, предназначенный для печати, а не для создания PDF?Какой лучший способ напечатать что-либо, без использования служб отчетов, таких как CrystalReports.

Я думаю, что Crystal Reports не будет работать для моего случая, потому что я не хочу печатать общие отчеты, но некоторые текстовые и графические материалы, которыеМне нужно генерировать динамически каждый раз, когда мне нужно напечатать.

Ответы [ 2 ]

1 голос
/ 17 марта 2010

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

EDIT
XPS - это формат описания страницы, который Microsoft включила в .NET с .NET 3.0. Он является номинальной частью WPF и интегрирован с моделью макета формы WPF. Но вы можете создавать документы XPS в памяти и отправлять их на принтеры из любого приложения .NET, включая приложение WinForms.

Пример: http://statestreetgang.net/post/2008/03/Creating-an-XPS-document-in-memory-via-the-DOM.aspx

Это приблизительно эквивалентно исследованной вами возможности iTextSharp, кроме:

  • вы можете делать все это в памяти, если хотите, не нужно сохранять файл в файловой системе. Конечно, если вы хотите сохранить в файл файловой системы, вы можете сделать это тоже.
  • вам не нужен внешний просмотрщик, чтобы начать печать.
0 голосов
/ 05 марта 2014

Если вы новичок в программировании и у вас есть некоторые данные, например, из базы данных, и вы хотите распечатать их после извлечения из базы данных. Тогда просто перейдите по этой ссылке, она будет вести вас шаг за шагом. Печать данных в точечной сети (C #, Vb.net)

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