0

我正在尝试使用我的 C# 代码打印 4 个 PDF 或 4 个 Jpeg,但我有一个非常重要的问题。这是我打印 PDF 的代码:

for (int pdfcount = 1; pdfcount < 5; pdfcount++)
{
  filename = "Doc" + pdfcount + ".pdf";
  ProcessStartInfo psInfo = new ProcessStartInfo();
  psInfo.FileName = @"C:\Program Files\Adobe\Reader 11.0\Reader\AcroRd32.exe";
  psInfo.Arguments = String.Format("/n /s /o /h /p{0}", filename);
  psInfo.CreateNoWindow = true;
  psInfo.UseShellExecute = true;
  psInfo.WindowStyle = ProcessWindowStyle.Hidden;
  Process process = Process.Start(psInfo);
}

所以它有效,但我对优先级有疑问。我使用此订单发送打印 Doc1.pdf、Doc2、Doc3 和 Doc4.pdf,但我的打印机将它们混合打印。例如,它首先打印 Doc3,然后打印 Doc2...等。我怎样才能让我的打印机队列得到修复?

4

1 回答 1

0

文档将根据首先被假脱机到打印队列的文档排队打印。因此,通常较小的文档可以更快地进行假脱机,因此首先进入队列。

我建议您找到一种方法来确认 Acrobat Reader 已完成对文档的后台处理,然后再继续打开并打印下一个文档。可能是在开始下一个之前等待进程退出。

于 2014-05-16T04:44:15.223 回答