C# 简单打印功能

 PrintDocument printDocument = new PrintDocument();
 
printDocument.OriginAtMargins = true;
 printDocument.PrinterSettings.PrinterName = _PrinterName;
printDocument.DefaultPageSettings.PaperSize = new System.Drawing.Printing.PaperSize("SpecimenLabel", 110, 180);//页面大小
            printDocument.DefaultPageSettings.Landscape = false;//横向打印
            PaperSize ps = new PaperSize();
            ps.Width = 180;
            ps.Height = 70;
            Margins magin = new Margins(0,0,0,0);
            printDocument.DefaultPageSettings.Margins = magin;
            printDocument.DefaultPageSettings.PaperSize = ps;
            printDocument.PrintPage += new PrintPageEventHandler(printDocument_PrintPage);


 void printDocument_PrintPage(object sender, PrintPageEventArgs e)
        {
            Graphics g = e.Graphics;
            float leftMargin = 5f; //左边距
            SolidBrush myBrush = new SolidBrush(Color.Black);//刷子
            float yPosition = 5f;//行定位
            Font printFont = new Font("宋体", 20f, FontStyle.Bold);//设置字体
            g.DrawImage(image,0,0);
            //g.DrawString(data, printFont, myBrush, leftMargin + 40f, 7f, new StringFormat());
            yPosition += printFont.GetHeight(g);//另起一行
            printFont = new Font("宋体", 10f, FontStyle.Bold);//改变字体
            _PrintPage++;//页号
            if (_PrintPage < _TotalPage)
            {
                e.HasMorePages = true;
            }
            else
            {
                e.HasMorePages = false;
            }
        }
原文地址:https://www.cnblogs.com/liuxinls/p/2960311.html