C#将文件(pdf,html或rtf)发送到打印机

时间:2015-07-09 11:24:03

标签: c#

我在使用C#打印文件时遇到问题。如何打印任何可能双面打印的文件。

Database.SetInitializer<TestContext>(new  CreateDatabaseIfNotExists<TestContext>())

但它不满足我,因为我不能在这里设置打印参数。如何使用 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(); 类进行此操作?

我使用Spire PDF将pdf转换为图像。

PrintDocument

但是,我收到了一个错误:

            PdfDocument pdf = new PdfDocument();
            pdf.LoadFromFile("e:\\proba1.pdf");

            BitmapSource source;
            Bitmap bmp;

            for (int i = 1; i < pdf.Pages.Count + 1; i++)
            {
                source = pdf.SaveAsImage(i);
                bmp = SourceToBitmap(source);
                bmp.Save(string.Format("result-{0}.png", i), ImageFormat.Png);
            }

2 个答案:

答案 0 :(得分:0)

您可以使用Free .NET PDF Library(免费,在visualstudiogallery上)。将PDF转换为图像并使用PrintDocument ....

打印

答案 1 :(得分:0)

对于Spire.NET(来自教程)

PdfDocument doc = new PdfDocument(); 
doc.LoadFromFile("sample.pdf"); 
Bitmap bmp = doc.SaveAsImage(0); 
bmp.Save("convertToBmp.bmp", ImageFormat.Bmp);