c#实现打印预览和打印【打印的位置不准确】
来源:互联网 发布:怎么联系淘宝联盟客服 编辑:程序博客网 时间:2024/04/28 01:49
//http://dotnet.chinaitlab.com/List_233.html
private void button4_Click(object sender, EventArgs e)
{
//预览功能,需要增加一个控件:ThePrintDocument
string strText = richTextBox1.Text;
StringReader myReader = new StringReader(strText);
PrintPreviewDialog printPreviewDialog1 = new PrintPreviewDialog();
printPreviewDialog1.Document = ThePrintDocument;
printPreviewDialog1.FormBorderStyle = FormBorderStyle.Fixed3D;
printPreviewDialog1.ShowDialog();
}
private void button5_Click(object sender, EventArgs e)
{
//打印功能,需要增加一个控件:printDialog
printDialog1.Document = ThePrintDocument;
string strText = richTextBox1.Text;
StringReader myReader = new StringReader(strText);
if (printDialog1.ShowDialog() == DialogResult.OK)
{
//这个方法将调用ThePrintDocument_PrintPage事件完成打印任务
ThePrintDocument.Print();
}
}
private void ThePrintDocument_PrintPage(object sender, PrintPageEventArgs ev)
{
//真正打印功能的实现
string strText = richTextBox1.Text;
StringReader myReader = new StringReader(strText);
float linesPerPage = 0;
float yPosition = 0;
int count = 0;
float leftMargin = ev.MarginBounds.Left;
float topMargin = ev.MarginBounds.Top;
string line = null;
Font printFont = richTextBox1.Font;
SolidBrush myBrush = new SolidBrush(Color.Black);
//计算每一页打印多少行
linesPerPage = ev.MarginBounds.Height / printFont.GetHeight(ev.Graphics);
//重复使用StringReader对象 ,打印出richTextBox1中的所有内容
while (count < linesPerPage && ((line = myReader.ReadLine()) != null))
{
// 计算出要打印的下一行所基于页面的位置
yPosition = topMargin + (count * printFont.GetHeight(ev.Graphics));
// 打印出richTextBox1中的下一行内容
ev.Graphics.DrawString(line, printFont, myBrush, leftMargin, yPosition, new StringFormat());
count++;
}
// 判断如果还要下一页,则继续打印
if (line != null)
ev.HasMorePages = true;
else
ev.HasMorePages = false;
myBrush.Dispose();
}
- c#实现打印预览和打印【打印的位置不准确】
- 浅析C#打印和C#打印预览的实现
- 浅析C#打印和C#打印预览的实现
- 浅析C#打印和C#打印预览的实现
- C# WPF 实现打印预览和打印
- 在C#里实现DATAGRID的打印预览和打印
- 在C#里实现DATAGRID的打印预览和打印
- 在C#里实现DATAGRID的打印预览和打印
- C#里实现DATAGRID的打印预览和打印
- 在C#里实现DATAGRID的打印预览和打印
- c#打印和打印预览
- C#实现打印与打印预览功能
- C#实现打印与打印预览功能
- C#实现打印与打印预览功能
- C#实现打印与打印预览功能
- 打印预览的实现
- C# PrintDocument 打印 和 打印预览
- JavaScript实现打印和打印预览功能
- 无限感慨
- 10个最好的免费Javascript图表生成方案
- Siemens PLM Software to Create Cloud Computing Quality Management Solution
- 分布式数据访问层DDAL
- PC_LINT------
- c#实现打印预览和打印【打印的位置不准确】
- 《林锐:高质量C/C++编程指南》笔记【3】
- 塞子算法 解决 一个经典c 程序
- [读]1. Don't put your resume ahead of the requirements
- 需求中的金融分析
- Oracle查看用户及权限
- The Pittsburgh Steelers
- 三极管结构示意图
- Tomcat+花生壳免费发布JSP网站