Ben*_*min 7 .net c# printing asp.net-mvc network-printers
我安装了打印机并在Intranet服务器上工作,我想以编程方式将"hello world"发送到该默认打印机.这似乎是最简单的事情,但我一直在谷歌搜索几个小时没有成功.(注意:我正在运行Windows 7的部署机器上开发asp.net mvc)
我试图从VB翻译的例子在这里为C#,但它说:"没有安装打印机".
public void TestPrint()
{
var x = new PrintDocument();
x.PrintPage += new PrintPageEventHandler(PrintPage);
x.Print();
}
private void PrintPage(Object sender, PrintPageEventArgs e)
{
var textToPrint = "Hello world";
var printFont = new Font("Courier New", 12);
var leftMargin = e.MarginBounds.Left;
var topMargin = e.MarginBounds.Top;
e.Graphics.DrawString(textToPrint, printFont, Brushes.Black, leftMargin, topMargin);
}
Run Code Online (Sandbox Code Playgroud)
我还曾试图片段从MSDN 这里,但它说,它不承认打印机名称.
public void TestPrint(string msg)
{
var server = new LocalPrintServer();
var queue = LocalPrintServer.GetDefaultPrintQueue();
// Call AddJob
var job = queue.AddJob();
// Write a Byte buffer to the JobStream and close the stream
var stream = job.JobStream;
var buffer = UnicodeEncoding.Unicode.GetBytes(msg);
stream.Write(buffer, 0, buffer.Length);
stream.Close();
}
Run Code Online (Sandbox Code Playgroud)
Ben*_*min 10
在.NET中打印"hello world"服务器端
PrintDocument对象码
using System.Drawing;
using System.Drawing.Printing;
public void Print()
{
var doc = new PrintDocument();
doc.PrinterSettings.PrinterName = "\\\\deployment-machine-name\\share-name";
doc.PrintPage += new PrintPageEventHandler(ProvideContent);
doc.Print();
}
public void ProvideContent(object sender, PrintPageEventArgs e)
{
e.Graphics.DrawString(
"Hello world",
new Font("Arial", 12),
Brushes.Black,
e.MarginBounds.Left,
e.MarginBounds.Top);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7734 次 |
| 最近记录: |