C# 将pdf文件发送到打印机-打印pdf
我正在用VisualStudio2010(C#)编写一个web应用程序。我想在单击按钮时将PDF(保存在我的计算机中)发送到打印机 为了创建PDF,我使用了iTextSharp。我尝试了这个,但它只是打开了Adobe Reader:C# 将pdf文件发送到打印机-打印pdf,c#,pdf,printing,C#,Pdf,Printing,我正在用VisualStudio2010(C#)编写一个web应用程序。我想在单击按钮时将PDF(保存在我的计算机中)发送到打印机 为了创建PDF,我使用了iTextSharp。我尝试了这个,但它只是打开了Adobe Reader: proc.StartInfo.FileName = @"C:\Archivos de programa\Adobe\Reader10.0\Reader\AcroRd32.exe"; proc.StartIn
proc.StartInfo.FileName = @"C:\Archivos de programa\Adobe\Reader10.0\Reader\AcroRd32.exe";
proc.StartInfo.Arguments = String.Format(@"/p /h {0}", pdfFileName);
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.CreateNoWindow = true;
proc.Start();
提前谢谢你 这一点已经在这里得到了提问和回答: 使用的代码是:
private void SendToPrinter()
{
ProcessStartInfo info = new ProcessStartInfo();
info.Verb = "print";
info.FileName = @"c:\output.pdf";
info.CreateNoWindow = true;
info.WindowStyle = ProcessWindowStyle.Hidden;
Process p = new Process();
p.StartInfo = info;
p.Start();
p.WaitForInputIdle();
System.Threading.Thread.Sleep(3000);
if (false == p.CloseMainWindow())
p.Kill();
}
它基本上会打开一个“隐藏”的pdf阅读器,告诉它打印,等待它完成,然后关闭它非常感谢!这真的对我有用!很抱歉,我之前无法回答您…@Alsan:没问题:)很高兴这是一个很好的解决方案,但如果我想使用手动打印机设置打印文档,该怎么办?WaitForInputdle()无效。启动()后,p似乎处于空闲模式。只有睡眠3秒钟,Adobe才能完成后台处理。这可能是大型文档的问题。它在Windows 8上不再工作+