打印分为普通打印和套打,普通打印就是直接指定要打印的信息,然后打印即可,套打要有一个规定的格式,比如货单,汇款单,套印单等
套打的时候,一般我们会指定模板作为背景,然后照着背景布局页面,将要打印的信息指定到要打印的位置上,然后就打印就行了
上次说到套打存折的时候用到了lodop控件,其实打印的方法很多,比如使用IE自带的打印,或者是IE自带的浏览器控件webBrowse,,DLPrinter,墙外打印控件(QWPrint)都可以
IE自带的打印直接window.print();就可以,也可以通过它打印页面中某一框架内的内容比如
<tr>
<td width="32" height="189"> </td>
<td colspan="2"> </td>
<td style=" 20px"> </td>
</tr>
<tr>
<td height="264" rowspan="2"> </td>
<td width="666" height="25" style="font-weight: bold; color: #0066cc">当前位置:系统查询 > 借阅信息打印 >>> </td>
<td width="58" align="center" class="word_Green"><a href="#" onClick="parent.contentFrame.focus();window.print();">打印</a></td>
<td rowspan="2" style=" 20px"> </td>
</tr>
<tr>
<td height="240" colspan="2" align="center" valign="middle" bgcolor="#FFFFFF"><iframe name="contentFrame" src="content.aspx" frameborder="0" width="100%" height="100%" style=" 89%; height: 97%"></iframe></td>
</tr>
<tr>
<td style="height: 21px"> </td>
<td colspan="2" style="height: 21px"> </td>
<td style=" 20px; height: 21px"> </td>
</tr>
</table>
我们只需要指定框架焦点,然后打印
parent.contentFrame.focus();window.print();
WebBrowse是一个简单的浏览器程序,支持打印,后退,前进,刷新,另存为,保存等功能,可以到网上搜一下方法,在这里,我们来说下,怎么使用它打印
首先,就像实例化对象一样,创建它,在<head></head>标签中加入
<object id="WebBrowser" classid="ClSID:
</object>
然后调用其方法打印就行了,支持直接打印,打印预览,页面设置等
<a href="#" onClick="document.all.WebBrowser.Execwb(7,1)">打印预览</a>
<a href="#" onClick="document.all.WebBrowser.Execwb(6,1)">打印</a>
<a href="#" onClick="document.all.WebBrowser.Execwb(6,6)">直接打印</a>
<a href="#" onClick="document.all.WebBrowser.Execwb(8,1)">页面设置</a>
…………
他们默认就是打印body中的内容,打印的时候,可以灵活选择要打印的信息,赋给body即可,如果不希望有些内容在打印的时候显示出来,可以将其隐藏
<style>
@media print{
div{display:none}
td,table{
background:display:none;
}
}
</style>
或者先导出到Word或者Excel中
private void Export(string FileType, string FileName)
{
Response.Charset = "GB2312";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString());
Response.ContentType = FileType;
this.EnableViewState = false;
StringWriter tw = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(tw);
GridView1.RenderControl(hw);
Response.Write(tw.ToString());
Response.End();
}
然后调用word或者Excel自带的打印功能去打印...