打印 vs2010 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 private string stringToPrint; //打印内容 private System.Drawing.Printing.PrintDocument ticketPrintDocument = new System.Drawing.Printing.PrintDocument(); //打印文档实例 /// <summary> /// 初始化打印机 /// </summary> private void InitPrint() { try { PrintDocument printdocument = new PrintDocument(); string stringdefault = printdocument.PrinterSettings.PrinterName; CbPrint.Items.Clear();//ComboBox控件 CbPrint.Text = stringdefault; foreach (string str in PrinterSettings.InstalledPrinters) { CbPrint.Items.Add(str);//如果只需要公司的打印机,这里只ADD一次就好 } ticketPrintDocument.PrintPage += new PrintPageEventHandler(PrinterPage); } catch (System.Exception ex) { System.Windows.MessageBox.Show(ex.ToString()); } } /// <summary> /// 打印页面配置 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void PrinterPage(object sender, PrintPageEventArgs e) { int charactersOnPage = 0; int linesPerPage = 0; e.Graphics.MeasureString(stringToPrint, System.Drawing.SystemFonts.DefaultFont, e.MarginBounds.Size, StringFormat.GenericTypographic, out charactersOnPage, out linesPerPage); e.Graphics.DrawString(stringToPrint, System.Drawing.SystemFonts.DefaultFont, System.Drawing.Brushes.Black, e.MarginBounds, StringFormat.GenericTypographic); //打印东西 } /// <summary> /// 打印 /// </summary> /// <param name="name"></param> /// <param name="path"></param> private void Print(string name, string path) { try { ticketPrintDocument.DocumentName = name; if (CbPrint.Text != "") { ticketPrintDocument.PrinterSettings.PrinterName = CbPrint.Text; } if (printpath == null) { return; } FileStream fs = new FileStream(@path, FileMode.Open); StreamReader sr = new StreamReader(fs, Encoding.GetEncoding("gb2312")); StandardPrintController spc = new StandardPrintController(); stringToPrint = sr.ReadToEnd(); ticketPrintDocument.PrintController = spc; ticketPrintDocument.Print(); sr.Close(); fs.Close(); } catch { ; } } web没有办法直接打印,间接的方法有:(1)在服务器端生成pdf或者word文档,下载让用户自己打开、打印。(2)制作一个对打印来说友好的网页,并且调用js用浏览器内置的打印网页方式打印。(3)使用ActiveX控件,在客户端本地调用打印机。 在InstallShield中,CreateObject("IISNamespace")返回NULL 使用webbrowser如何获取JavaScript中变量的值? WinCE的程序,如何防止程序重复运行? c++ 转 c#问题(立即给分) listview里的图片移除 中国移动的飞信是用什么开发的?JAVA还是C#还是C++ 哪里有.net 新技术的教学视频下载? 事务处理中,cmd.ExecuteNonQuery();出错怎么处理? 请教C#高手! 怎样实现全局对象? 一个FTP拷贝代码,两个小问题 Application.Run到底做了些什么工作啊
private System.Drawing.Printing.PrintDocument ticketPrintDocument = new System.Drawing.Printing.PrintDocument(); //打印文档实例 /// <summary>
/// 初始化打印机
/// </summary>
private void InitPrint()
{
try
{
PrintDocument printdocument = new PrintDocument();
string stringdefault = printdocument.PrinterSettings.PrinterName; CbPrint.Items.Clear();//ComboBox控件
CbPrint.Text = stringdefault;
foreach (string str in PrinterSettings.InstalledPrinters)
{
CbPrint.Items.Add(str);//如果只需要公司的打印机,这里只ADD一次就好
}
ticketPrintDocument.PrintPage += new PrintPageEventHandler(PrinterPage);
}
catch (System.Exception ex)
{
System.Windows.MessageBox.Show(ex.ToString());
}
}
/// <summary>
/// 打印页面配置
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void PrinterPage(object sender, PrintPageEventArgs e)
{
int charactersOnPage = 0;
int linesPerPage = 0; e.Graphics.MeasureString(stringToPrint, System.Drawing.SystemFonts.DefaultFont, e.MarginBounds.Size, StringFormat.GenericTypographic, out charactersOnPage, out linesPerPage);
e.Graphics.DrawString(stringToPrint, System.Drawing.SystemFonts.DefaultFont, System.Drawing.Brushes.Black, e.MarginBounds, StringFormat.GenericTypographic); //打印东西
}
/// <summary>
/// 打印
/// </summary>
/// <param name="name"></param>
/// <param name="path"></param>
private void Print(string name, string path)
{
try
{
ticketPrintDocument.DocumentName = name;
if (CbPrint.Text != "")
{
ticketPrintDocument.PrinterSettings.PrinterName = CbPrint.Text;
}
if (printpath == null)
{
return;
} FileStream fs = new FileStream(@path, FileMode.Open);
StreamReader sr = new StreamReader(fs, Encoding.GetEncoding("gb2312"));
StandardPrintController spc = new StandardPrintController(); stringToPrint = sr.ReadToEnd();
ticketPrintDocument.PrintController = spc;
ticketPrintDocument.Print(); sr.Close();
fs.Close();
}
catch
{
;
}
}
(1)在服务器端生成pdf或者word文档,下载让用户自己打开、打印。
(2)制作一个对打印来说友好的网页,并且调用js用浏览器内置的打印网页方式打印。
(3)使用ActiveX控件,在客户端本地调用打印机。