asp.net中WinForm分多页打印示例

作者:袖梨 2022-06-25

示例

 代码如下 复制代码

using System;
using System.Drawing;
using System.Drawing.Printing;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        private PrintDocument printDocument1; //PrintDocument
        private int pagenow = 0; //打印页数
        private int papercount = 3; //打印总页数

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            printDocument1 = new PrintDocument();
            printDocument1.PrintPage += new PrintPageEventHandler(printDocument1_PrintPage);
        }

        ///


        /// 开始打印
        ///

        ///
        ///
        private void button1_Click(object sender, EventArgs e)
        {
            pagenow = 0;
            printDocument1.Print();
        }

        ///


        /// 打印
        ///

        ///
        ///
        private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
        {
            pagenow++;

            Font font = new Font("宋体", 12);
            Brush brush = Brushes.Black;
            e.Graphics.DrawString(string.Format("{0}\r\n\r\n第{1}页", "木子屋 - http://www.111com.net/", pagenow), font, brush, 10, 10);
            e.HasMorePages = pagenow < papercount;
        }
    }
}

当然如果我们要图形化的话也只需要加两个点击按钮然后执行这段代码即可。

相关文章

精彩推荐