打印方法小议,页面设置对话框、打印预览对话框、打印对话框等功能,C#源代码 //字符串流对

时间:2012-01-30 07:44:25
【文件属性】:

文件名称:打印方法小议,页面设置对话框、打印预览对话框、打印对话框等功能,C#源代码 //字符串流对

文件大小:37KB

文件格式:RAR

更新时间:2012-01-30 07:44:25

打印方法小议,页面设置对话框、打印预览对话框、打印对话框等功能,C#源代码 //字符串流对

打印方法小议,页面设置对话框、打印预览对话框、打印对话框等功能,C#源代码 //字符串流对 象,一行一行读取文本 private StringReader MyReader; private void button1_Click(object sender, EventArgs e) { //显示页面设置对话框 PageSetupDialog MyDlg = new PageSetupDialog(); MyDlg.Document = this.printDocument1; MyDlg.ShowDialog(); } private void button2_Click(object sender, EventArgs e) { //显示打印预览对话框 PrintPreviewDialog MyDlg = new PrintPreviewDialog(); MyDlg.Document = this.printDocument1; this.MyReader = new StringReader(this.richTextBox1.Text); MyDlg.ShowDialog(); } private void button3_Click(object sender, EventArgs e) { //显示打印对话框 PrintDialog MyDlg = new PrintDialog(); MyDlg.Document = this.printDocument1; MyDlg.ShowDialog(); } private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) { Graphics g = e.Graphics; //每一页的行数 float MyLines = e.MarginBounds.Height / this.richTextBox1.Font.GetHeight (g); //打印时的行计数器 int MyLineNumber = 0; //打印时的纵坐标 float MyYPosition = 0; float MyMarginLeft = e.MarginBounds.Left; float MyMarginTop = e.MarginBounds.Top; //每一行要打印的文本 string MyLine = ""; while ((MyLineNumber < MyLines) && ((MyLine = MyReader.ReadLine()) != null)) { MyYPosition = MyMarginTop + MyLineNumber * this.richTextBox1.Font.GetHeight(g); g.DrawString(MyLine, this.richTextBox1.Font, new SolidBrush (Color.Black), MyMarginLeft, MyYPosition, new StringFormat()); MyLineNumber++; } if (MyLine != null) { //发出下一次PrintPage事件 e.HasMorePages = true; } else { e.HasMorePages = false; }


【文件预览】:
print
----print()
--------Form1.cs(3KB)
--------bin()
--------obj()
--------Properties()
--------Program.cs(486B)
--------Form1.Designer.cs(4KB)
--------print.csproj(4KB)
--------Form1.resx(6KB)
----print.sln(905B)
----print.suo(13KB)
----新建 文本文档.txt(2KB)

网友评论