در رویداد PrintPage اندازه مبدا و مقصد رو تعیین کنید:
        Bitmap bmp;
        private void CaptureScreen()
        {
            Graphics myGraphics = this.CreateGraphics();
            bmp = new Bitmap(this.Width, this.Height);
            this.DrawToBitmap(bmp, new Rectangle(0, 0, this.Width, this.Height));
        }
        private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
        {
            int newWidth = (int)printDocument1.DefaultPageSettings.PrintableA  rea.Width;
            int newHeight = Convert.ToInt32((double)newWidth / bmp.Width * Height);
            e.Graphics.DrawImage(bmp,
                                 new Rectangle(0, 0, newWidth, newHeight),
                                 new Rectangle(0, 0, bmp.Width, bmp.Height),
                                 GraphicsUnit.Pixel);
        }