PDA

View Full Version : متد های چاپ فرم های سی شارپ



redflight
شنبه 23 شهریور 1392, 13:52 عصر
سلام
من از صبح دارم می گردم همه سایت های موجود در اینترنت و فروم ها
من یه فرم دارم می خوام چاپش کنم
حالا چه بهتر که مثلا علاوه بر چاپ به صورت پی دی اف یا عکس هم دربیاد ( این هم بلد نیستم )
برای چاپ یه صفحه کدهای زیادی رو بررسی کردم که راستشو بخواین چیز زیادی دستگیرم نشد ( این رو گفتم که نگین برو سرچ کن توی همین تالار ، تاپیک های 89 هم نبش قبر کردم !!)
من تا حالا ابزار های پرینت خود سی شارپ در toolbox رو ندیده بودم وولی فکر می کنم خیلی خوب باشن ! اینجوری که یه جستجو راجبشون کردم اما نحوه کار باهاشون رو بلد نیستم

خب ببخشید مقدمه سوالم خیلی زیاد بود چون چند ساعت دارم می گردم و شدیدا گیج شدم
من می خوام فرمم رو پرینت کنم جچه راهی بهتره؟ خود ابزار ها اگه بهتر هستن چه جوری کار می کنن؟
2: چه جوری فرمم رو به صورتی پی دی اف یا تصویر در بیارم و حالا توی یه فایل در کامپیوترم ذخیره کنم ؟ ( ذخیره رو بلدم اما تبدیلشو بلد نیستم)
ممنون می شم کمک کنین
مرسی:ناراحت:

redflight
شنبه 23 شهریور 1392, 14:12 عصر
بچه ها فوریه لطفا جواب بدین :(((

abdullah20
شنبه 23 شهریور 1392, 14:15 عصر
یعنی فقط میخواید صفحه فرم را چاپ کنید و به صورت تصویر هم ذخیره کنید؟

redflight
شنبه 23 شهریور 1392, 14:18 عصر
بله
راستشو بخواید یه فرم مثلا ثبت نام درست کردم می خوام طرف اطلاعات رو وارد کنه پرینت بگیره به صورت حالا پی دی اف یا عکس ذخیره بشه
بعد من بگراند این فرم رو مثلا سربرگ شرکتم گذاشتم برای همین کل فرمم باید چاپ بشه
لطفا کمک کنین واقعا بهش نیاز دارم فوری:(((

abdullah20
شنبه 23 شهریور 1392, 14:25 عصر
یک printDocument روی فرمتون قرار بدید
باید اول از فرمتون عکس بگیرید

Bitmap memoryImage;
private void CaptureScreen()
{
Graphics myGraphics = this.CreateGraphics();
Size s = this.Size;
memoryImage = new Bitmap(s.Width, s.Height, myGraphics);
Graphics memoryGraphics = Graphics.FromImage(memoryImage);
memoryGraphics.CopyFromScreen(this.Location.X, this.Location.Y, 0, 0, s);
}
private void button1_Click(object sender, EventArgs e)
{
CaptureScreen();
printDocument1.Print();
memoryImage.Save(Application.StartupPath + @"\image.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);
}

private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
e.Graphics.DrawImage(memoryImage, 0, 0);
}

redflight
شنبه 23 شهریور 1392, 14:37 عصر
یک printDocument روی فرمتون قرار بدید
باید اول از فرمتون عکس بگیرید

Bitmap memoryImage;
private void CaptureScreen()
{
Graphics myGraphics = this.CreateGraphics();
Size s = this.Size;
memoryImage = new Bitmap(s.Width, s.Height, myGraphics);
Graphics memoryGraphics = Graphics.FromImage(memoryImage);
memoryGraphics.CopyFromScreen(this.Location.X, this.Location.Y, 0, 0, s);
}
private void button1_Click(object sender, EventArgs e)
{
CaptureScreen();
printDocument1.Print();
memoryImage.Save(Application.StartupPath + @"\image.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);
}

private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
e.Graphics.DrawImage(memoryImage, 0, 0);
}


من الان خونه نیستم پرینتر ندارم اما دستور پرینت رفت مرسیی
ولی عکسی ازش ذخیره نشد و به فرمت خط زیر ارور داد کلا خط زیر داره چکار می کنه


memoryImage.Save(Application.StartupPath + @"\image.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);

abdullah20
شنبه 23 شهریور 1392, 14:43 عصر
مگه میشه من خودم الان نوشتم و مشکلی هم نداره
این خط میاد عکسی را که از فرم گرفته شده است را با فرمت jpg در مسیر پروژه کنار فایل برنامه ذخیره میکنه

redflight
شنبه 23 شهریور 1392, 14:48 عصر
می شه یه توضیح اجمالی راجب کدها بهم بدید؟؟

راستی راجب ابزارهای دیگه پرینت در تول باکس هم می شه بهم توضیح بدین؟ ببخشید زیاد سوال می کنم اما آخه هیچ جایی چیز مناسبی پیدا نکردم
مثلا پرینت پریویو و.....

redflight
شنبه 23 شهریور 1392, 14:51 عصر
ایناهاش عکس ارور
:(

abdullah20
شنبه 23 شهریور 1392, 14:57 عصر
دوست عزیز شما مسیر را تغییر دادید
اگر میخواید در درایو d ذخیره بشه Application.StartupPath + را پاک کنید

redflight
شنبه 23 شهریور 1392, 15:04 عصر
وای درست شدhttp://www.pic4ever.com/images/47b20s0.gif
خیلی خیلی خیلی ممنونم


بعد می شه راجب کد ها در حد یه کامنت یه توضیح کوچولو بهم بدین؟
خیلی ازتون ممنونم

redflight
شنبه 23 شهریور 1392, 15:16 عصر
آهان عکس با لینکی که دادید در مسیر خود پروژه ذخیره می شده من حواسم نبود

می شه راجب کد ها توضیح بدید؟ چون دوست ندارم کپی پیست کنم

آهان راستی ، راجب ابزارهای پرینت تولباکس هم می شه یه توضیح بدید؟


خیلی از لطفتون ممنونم....

as!d_m
پنج شنبه 28 شهریور 1392, 10:21 صبح
دوست عزیز من هم دنبال یه همچین کدی می گشتم ممنون از اطلاعاتتون

اما من نیازی به ذخیره شدن عکسش ندارم فقط میخوام فرمم چاپ بشه

میشه بگین تو این کد بالایی چه تغییراتی باید ایجاد بشه؟؟

abdullah20
پنج شنبه 28 شهریور 1392, 10:44 صبح
فقط خط زیر را پاک کنید:
memoryImage.Save(Application.StartupPath + @"\image.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);

as!d_m
جمعه 29 شهریور 1392, 15:56 عصر
من دقیقا همین کد ها رو نوشتم اما برای من به کد زیر خطا داد



printDocument1.Print();
میگه پارامترش نامناسبه (the parametr is incurent) یه همچین چیزی

abdullah20
جمعه 29 شهریور 1392, 16:21 عصر
پروژه را ضمیمه کردم

as!d_m
سه شنبه 02 مهر 1392, 13:36 عصر
دوست عزیز شرمنده من این فایل شما رو دریافت کردم و اجرا شد اما وقتی داخل همین فرم شما چند کنترل
مثل تکست باکس و پیکچر باکس گذاشتم و بهشون مقدار دادم برنامه شما هم همان خطا را داد

خواهش می کنم بیشتر راهنمایی کنین نیاز مبرمی بهش دارم
ممنون