套打
来源:互联网 发布:mac发热严重怎么办 编辑:程序博客网 时间:2024/04/18 10:27
private void printButton_Click(object sender, EventArgs e)
{
try
{
this.configFile=Application.StartupPath+"//Config1.xml";
try
{
printFont = new Font("Arial", 10);
PrintDocument pd = new PrintDocument();
pd.PrintPage += new PrintPageEventHandler(this.pd_PrintPage);
pd.Print();
}
finally
{
//streamToPrint.Close();
}
}
catch(Exception ex)
{
//MessageBox.Show(ex.Message);
}
}
// The PrintPage event is raised for each page to be printed.
private void pd_PrintPage(object sender, PrintPageEventArgs ev)
{
int n=1;
String drawString="";
if(this.printDS.Tables.Count<=0)
{
//如果该表格为0 则从数据源复制表格
this.printDS=ds.Copy();
}
for(int j=0;j<this.printDS.Tables[0].Rows.Count&&n<2;j++)
{
for(int i=1;i<this.printDS.Tables[0].Columns.Count;i++)
{
DataRow row=this.printDS.Tables[0].Rows[j];
// Create string to draw.
drawString = this.printDS.Tables[0].Rows[j][i].ToString();
// Create font and brush.
//Font drawFont = new Font("宋体", 14);
Font drawFont=new Font(GetString("PointFont","family"),float.Parse(GetString("PointFont","size")));
SolidBrush drawBrush = new SolidBrush(Color.Black);
// Create point for upper-left corner of drawing.
string tmp="Point"+i.ToString();
float x = this.GetXPoint(tmp);
float y = this.GetYPoint(tmp);
// Set format of string.
StringFormat drawFormat = new StringFormat();
//drawFormat.FormatFlags = StringFormatFlags.DirectionRightToLeft;
// Draw string to screen.
ev.Graphics.DrawString(drawString, drawFont, drawBrush, x, y, drawFormat);
}
//去掉已打印的
n++;
this.printDS.Tables[0].Rows.RemoveAt(j);
// j--;
}
//判定是否已经打印完
if(this.printDS.Tables[0].Rows.Count>0)
{
ev.HasMorePages=true;
}
else
{
//this.printDS.Tables[0].Rows.RemoveAt(this.printDS.Tables[0].Rows.Count);
//删除该表格,如果不删除的话,或在打印到最后一行的时候报错,当然不会显示,但会影响程序效率
this.printDS.Tables.RemoveAt(0);
ev.HasMorePages=false;
}
private float GetXPoint(string key)
{
//建立连接
float retValue=0;
XmlDocument xmlDoc=new XmlDocument();
try
{
xmlDoc.Load(configFile);
retValue=float.Parse(xmlDoc["Config"][key].Attributes["XPoint"].InnerText);
MessageBox.Show(retValue.ToString());
return retValue;//0--没有找到
}
catch(Exception ee)
{
return 0;
}
}
/// <summary>
/// 获得Y坐标
/// </summary>
/// <param name="key">关键引索</param>
/// <returns></returns>
private float GetYPoint(string key)
{
//建立连接
float retValue=0;
XmlDocument xmlDoc=new XmlDocument();
try
{
xmlDoc.Load(configFile);
retValue=float.Parse(xmlDoc["Config"][key].Attributes["YPoint"].InnerText);
return retValue;//0--没有找到
}
catch(Exception ee)
{
return 0;
}
}
/// <summary>
/// 获得任意属性值
/// </summary>
/// <param name="key1">引索</param>
/// <param name="key2">属性</param>
/// <returns></returns>
private string GetString(string key1 ,string key2)
{
//建立连接PointFont","size
string retValue="";
XmlDocument xmlDoc=new XmlDocument();
try
{
xmlDoc.Load(configFile);
retValue=(xmlDoc["Config"][key1].Attributes[key2].InnerText);
return retValue;//0--没有找到
}
catch(Exception ee)
{
return "";
}
}
private void printButton2_Click(object sender, System.EventArgs e)
{
try
{
// streamToPrint = new StreamReader("C://MyFile.txt");
this.configFile=Application.StartupPath+"//Config2.xml";
MessageBox.Show(GetString("PointFont", "family").ToString(), GetString("PointFont", "size").ToString());
return;
try
{
printFont = new Font("Arial", 10);
PrintDocument pd = new PrintDocument();
pd.PrintPage += new PrintPageEventHandler(this.pd_PrintPage);
pd.Print();
}
finally
{
//streamToPrint.Close();
}
}
catch(Exception ex)
{
//MessageBox.Show(ex.Message);
}
}
private void button1_Click(object sender, System.EventArgs e)
{
this.configFile=Application.StartupPath+"//Config1.xml";
MessageBox.Show(this.GetXPoint("Point1").ToString());
}
- 套打
- 套打
- 什么是套打 水晶报表套打
- c#中的套打
- 发票套打解决方案
- 信封套打 下载
- 套打页面(轉)
- web打印、套打
- 发票套打程序
- eas 套打操作
- 套打程序代码。
- WEB套打
- C#套打
- C#套打
- C#套打
- web 套打
- java 套打
- java 套打 实现
- 安装ASPAJAXExtSetup及AjaxControlToolkit
- 弹出窗口总结
- 各种数据库如何运行sql文件?
- 弹出网页窗口全攻略(html/hta)
- Java容器类(List、ArrayList、Vector、map、HashTable、HashMap)的分析比较
- 套打
- 一项失败的工作(续)
- 用JSP smartupload 上次图片简单实例
- 企业内部USB存储设备的安全解决方案该如何做才好
- C# Socket开发之异步
- 磁带的最优存储(贪心算法)
- CSDN 成为了技术 SNS
- C# Socket开发之同步
- javascript 知识