C# net8 PrintDocument 列印兩頁不一樣的 範例
C# net8 PrintDocument 列印兩頁不一樣的 範例
資料來源: copilot/gemini
code
using System; using System.Drawing; using System.Drawing.Printing; using System.Windows.Forms; class Program { static int pageNumber = 1; static void Main() { PrintDocument printDoc = new PrintDocument(); printDoc.PrintPage += new PrintPageEventHandler(PrintPage); PrintPreviewDialog previewDialog = new PrintPreviewDialog { Document = printDoc }; previewDialog.ShowDialog(); } static void PrintPage(object sender, PrintPageEventArgs e) { if (pageNumber == 1) { e.Graphics.DrawString("這是第 1 頁", new Font("Arial", 16), Brushes.Black, 100, 100); e.Graphics.DrawRectangle(Pens.Black, new Rectangle(50, 150, 200, 100)); pageNumber++; e.HasMorePages = true; // 指定還有下一頁 } else { e.Graphics.DrawString("這是第 2 頁", new Font("Arial", 16), Brushes.Black, 100, 100); e.Graphics.FillEllipse(Brushes.Blue, new Rectangle(50, 150, 200, 100)); e.HasMorePages = false; // 最後一頁 } } }