我有一个窗体,其中包含一个表格,上面有两个标签,下面还有许多其他组件 通过使用PrintDocument我想打印带有标题的表,只有那些没有显示其他组件。 This is my form
我使用的代码仅打印表格。
Bitmap printImage;
private void CaptureScreen()
{
printImage = new Bitmap(tableLayoutPanel1.Width, tableLayoutPanel1.Height);
tableLayoutPanel1.DrawToBitmap(printImage, new Rectangle(0, 0, printImage.Width, printImage.Height));
}
private void printDocument1_PrintPage(object sender, PrintPageEventArgs e)
{
e.Graphics.DrawImage(printImage, 0, 0);
}
如何组合标签?
答案 0 :(得分:0)
在你的打印代码中,使用Graphics.MeasureString来获取标签文本的大小(或使用标签高度),用它来偏移你的位图(而不是0,0),然后使用Graphics对象绘制使用标签的Text,Forecolor和Font属性的字符串。如果要使用标签backcolor,请在绘制字符串之前执行Graphics.FillRectangle。
如果您的标签文字是自动换行的,并且您希望以这种方式进行打印,则可能需要具有创造性。