#c_sharp #winforms #печать #принтер
Как из консольного приложения или приложения WinForms отправить что-либо на принтер?
Ответы
Ответ 1
Минимально необходимо для печати: using System.Drawing.Printing; using System.Drawing; void Print() { PrintDocument printDoc = new PrintDocument(); printDoc.PrintPage += PrintPageHandler; printDoc.Print(); } void PrintPageHandler(object sender, PrintPageEventArgs e) { //Замените на e.Graphics.DrawImage или любую другую логику e.Graphics.DrawString("Привет", new Font("Arial", 14), Brushes.Black, 0, 0); } при этом печать будет на дефолтном принтере. PrintDialog позволяет выбрать принтер и настроить некоторые параметры PrintDocument через диалоговое окно, но за печать отвечает именно PrintDocument. Расширим пример для использования PrintDialog: PrintDocument printDoc = new PrintDocument(); printDoc.PrintPage += PrintPageHandler; PrintDialog printDialog = new PrintDialog(); printDialog.Document = printDoc; if (printDialog.ShowDialog() == DialogResult.OK) printDialog.Document.Print(); Убираем всплывающие окошки, если в них нет необходимости: printDoc.PrintController = new StandardPrintController(); По аналогии с добавлением PrintDialog, можно добавить PageSetupDialog и PrintPreviewDialog последовательно передавая им объект PrintDocument.
Комментариев нет:
Отправить комментарий