我想在我的打印作业上设置我的设置。 例如,我想在1张A4纸上打印4页pdf文件。 我该怎么办?
这是我打印pdf文件的代码:
private void SendToPrinter()
{
OpenFileDialog ofd = new OpenFileDialog();
if (ofd.ShowDialog() == DialogResult.OK)
{
ProcessStartInfo info = new ProcessStartInfo();
info.Verb = "print";
info.FileName = ofd.FileName;
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();
}
}
答案 0 :(得分:1)
您无法使用info.Verb = "print"
执行此操作。通过将Verb
设置为print
,您基本上使用的是Windows shell命令print
,该命令采用两个参数:文件名和打印机设备名称。
如果要打印具有特定打印设置的pdf文件,则必须使用可以使用命令行参数打印pdf的第三方软件(如Ghostscript)。有关详细信息,请参阅this文章。