نمایش نتایج 1 تا 1 از 1

نام تاپیک: نحوه چاپ یک فرم با تمام خصوصیات

  1. #1
    کاربر دائمی آواتار Masoome_das
    تاریخ عضویت
    تیر 1389
    محل زندگی
    تهران
    سن
    41
    پست
    199

    نحوه چاپ یک فرم با تمام خصوصیات

    برای اینکه با چاپ فرم هاتون درکریستال ریپورت مشکل دارید
    از این روش ساده استفاده کنید
    فرمتون را تبدیل به یک تصویر کنید و ازش پرینت بگیرید ولی این
    نکته را توجه داشته باشد که
    فقط تعداد اطلاعات محدود و کمتر از یک صفحه را می توان به این طریق چاپ کرد مثلا صدور یک فیش ساده یا صدور یک کارت عکس دار
    نکته به ابعاد فرمتون حتما توجه کنید که بیشتر یا کمتر از صفحه چاپ نباشه
    پیشنهاد من برای کاغذ ( A4 (826,680
    سپس عین این کد را در صفحه ای که می خواهید ازش پرینت بگیرید کپی کنید
    کنترل های لازم را هم در فرم بکشید
    Buttom,PrintDocument,PrintDialog,PrintRievieDialog

    [System.Runtime.InteropServices.DllImport("gdi32.dll")]
    publicstaticexternlong BitBlt(IntPtr hdcDest, int nXDest, int nYDest, int nWidth, int nHeight, IntPtr hdcSrc, int nXSrc, int nYSrc, int dwRop);
    privateBitmap memoryImage;
    privatevoid CaptureScreen()
    {
    Graphics mygraphics = this.CreateGraphics();
    Size s = this.Size;
    memoryImage = newBitmap(s.Width, s.Height, mygraphics);
    Graphics memoryGraphics = Graphics.FromImage(memoryImage);
    IntPtr dc1 = mygraphics.GetHdc();
    IntPtr dc2 = memoryGraphics.GetHdc();
    BitBlt(dc2, 0, 0, this.ClientRectangle.Width, this.ClientRectangle.Height, dc1, 0, 0, 13369376);
    mygraphics.ReleaseHdc(dc1);
    memoryGraphics.ReleaseHdc(dc2);
    }
    //PrintPage// printDocument1
    privatevoid printDocument1_PrintPage(System.Object sender, System.Drawing.Printing.PrintPageEventArgs e)
    {
    e.Graphics.DrawImage(memoryImage, 0, 0);
    }
    //
    privatevoid printButton_Click(System.Object sender, System.EventArgs e)
    {
    CaptureScreen();
    printDialog1.AllowPrintToFile = false;
    printDialog1.AllowSelection = printDialog1.AllowSomePages = false;
    printDocument1.PrinterSettings = printDialog1.PrinterSettings;


    printPreviewDialog1.Document = printDocument1;

    if (printPreviewDialog1.ShowDialog()== DialogResult.OK)
    {
    if (printDialog1.ShowDialog() == DialogResult.OK)
    {
    printDocument1.Print();
    }
    }
    }

    خصوصیت
    PrintPage مربوط به PrintDocument را به متد
    printDocument1_PrintPage
    نسبت بدهید
    و رویداد کلیک باتن را هم به متد
    printButton_Click

    موفق باشید
    فایل های ضمیمه فایل های ضمیمه
    • نوع فایل: zip 13.zip‏ (43.0 کیلوبایت, 33 دیدار)

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •