پرینت گرفتن ار فرم با printdocument
با سلام خدمت دوستان برنامه نویس
من می خوام از یک صفحه در فرمم پرینت بگیرم کدام رو هم از روی pdf آقای سید محمد هاشمیان نوشتم ولی بهم ارور میده که"strfilename مقدارش null است" در این متغییر باید آدرس فایلی که قراره پرینت بگیره ذخیره بشه منظور فرم مورد نظره هرچی می نویسم یا می گه این آدرسو پیدا نمی کنه یا null باید چه کار کنم خسته شدم دیگه یه کمکی بکنید ممنون میشم.
private void button1_Click(object sender, EventArgs e)
{
PrintDocument objprintdoc = new PrintDocument();
objprintdoc.DocumentName = "fish";
printDialog1.AllowPrintToFile = true;
printDialog1.AllowSelection = true;
printDialog1.AllowSomePages = true;
printDialog1.Document = objprintdoc;
if (printDialog1.ShowDialog() == DialogResult.OK)
{
//strfilename = "D:\\my project\\hoghoogh\\hoghoogh\\fish.cs";
objstreamtoprint = new StreamReader(strfilename);
objprintfont = new Font("Arial", 10);
objprintdoc.PrinterSettings = printDialog1.PrinterSettings;
objprintdoc.PrintPage += new PrintPageEventHandler(prtpage);
objprintdoc.Print();
objstreamtoprint.Close();
objstreamtoprint = null;
}
//capturescreen();
//printdoc1.Print();
}
private void prtpage(object sender, PrintPageEventArgs e)
{
float snglinesperpage = 0;
float sngverticalposition = 0;
int intlinecount = 0;
float sngleftmargin=e.MarginBounds.Left;
float sngtopmargin=e.MarginBounds.Top;
string strline;
snglinesperpage = e.MarginBounds.Height /
objprintfont.GetHeight(e.Graphics);
strline = objstreamtoprint.ReadLine();
while ((intlinecount < snglinesperpage) && (strline != null))
{
sngverticalposition = sngtopmargin + (intlinecount * objprintfont.GetHeight(e.Graphics));
e.Graphics.DrawString(strline, objprintfont, Brushes.Black, sngleftmargin, sngverticalposition, new StringFormat());
intlinecount = intlinecount + 1;
if (intlinecount < snglinesperpage)
{
strline = objstreamtoprint.ReadLine();
}
}
if (strline != null)
{
e.HasMorePages = true;
}
else
{
e.HasMorePages = false;
}
}
نقل قول: پرینت گرفتن ار فرم با printdocument
من با دو خط از فرمم پرينت ميگيرم : ببين بدردت ميخوره:
private void btnPrint_Click(object sender, EventArgs e)
{
// Show Page Setup dialog
chart1.Printing.PageSetup();
// Print preview chart
chart1.Printing.PrintPreview();
// Print chart (without Printer dialog)
//chart1.Printing.Print(false);
}
نقل قول: پرینت گرفتن ار فرم با printdocument
این chart واسه چیه ؟ چطوری باید اطلاعات فرمم رو چاپ کنم ؟ کیفیتش چطوره؟بالاست؟
نقل قول: پرینت گرفتن ار فرم با printdocument
من با نوشتن این خط کد" strfilename = "D:\\my project\\hoghoogh\\hoghoogh\\fish.cs تونستم پرینت بگیرم ولی بجای فرمم از کدای فرمم پرینت می گیره چون آدرس مال کداست.
چطوری آدرس فرم رو بدم فرم را چاپ کنه؟؟؟؟؟؟
تورو خدا کمک کنید.مرسی
نقل قول: پرینت گرفتن ار فرم با printdocument
نقل قول: پرینت گرفتن ار فرم با printdocument
اینو امتحان کردم کیفیتش پایینه بدرد نمی خوره
یکی به من بگه چطوری آدرس فرمی که لود شده رو به متغییر بدم
نقل قول: پرینت گرفتن ار فرم با printdocument
یعنی هیچکس نمیتونه کمکم کنه؟؟؟؟؟؟؟؟؟؟؟؟؟؟
نقل قول: پرینت گرفتن ار فرم با printdocument
دوستان ممنون می شم وقتتون را در اختیار من بگذارید و بگید چطوری آدرس فرمی که لود می شه را در یک متغییر قرار داد؟؟