C# 如何在特定打印机中打印文件?
我想用特定的打印机打印我的文件。但是,它总是为作业选择相同的打印机。我正在使用C# 如何在特定打印机中打印文件?,c#,C#,我想用特定的打印机打印我的文件。但是,它总是为作业选择相同的打印机。我正在使用Spire.Pdf用于.NET。我的代码如下: [...] PdfDocument pdf = new PdfDocument(); pdf.LoadFromFile(path); pdf.PrintSettings.PrinterName = "HP"; pdf.Print(); pdf.Dispose(); [...] 我有两台打印机。其中一个名为“爱普生L31
Spire.Pdf代码>用于.NET。我的代码如下:
[...]
PdfDocument pdf = new PdfDocument();
pdf.LoadFromFile(path);
pdf.PrintSettings.PrinterName = "HP";
pdf.Print();
pdf.Dispose();
[...]
我有两台打印机。其中一个名为“爱普生L310系列”,另一个是名为“HP”的打印机。
即使我设置了pdf.PrintSettings.PrinterName=“HP”代码>它为打印作业选择“EPSON L310系列”
如您所见,“HP”在打印对话框中默认处于选中状态。您无法通过程序可靠地控制输出打印机
最多可以显示“打印”对话框,用户这次可以在其中覆盖输出打印机
你可以按你的名字命名。甚至可以按名称获取所有打印机:
然而,此时,您基本上正在重新创建打印对话框
还要注意,从技术上讲,这些不是打印机。这些是打印队列。对于这样一个简单的案例,这可能并不重要。但是,一旦你了解了更精细的细节,比如每个队列有多台打印机,就很重要了。类PdfDocument
来自哪里?这不可能,因为它没有Print()
方法。它是“使用Spire.Pdf;”@matthewwatson如果放置Pdf.PrintSettings.PrintController=new StandardPrintController(),会发生什么在调用pdf.Print()
之前,请查看使用PrinterSettings.InstalledPrinters
确定可用打印机的方法。你可能想把它扔掉,看看它认为什么是可用的。