Как распечатать PDF-документ в дуплексном режиме с помощью acrord32
Привет
У меня есть некоторый существующий код на C#, который отправляет PDF-файлы на принтер, и он отлично работает. Однако теперь мне нужно отправить PDF-файл в двустороннем формате и выбрать выходной лоток, но я не могу узнать, можно ли это сделать из AcroRD32.EXE и если да, то как. Мой существующий код автоматически обнаруживает новый документ и печатает его следующим образом:
Process proc = new Process(); proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; proc.StartInfo.Verb = "print"; //Define location of adobe reader/command line //switches to launch adobe in "print" mode proc.StartInfo.FileName = System.Configuration.ConfigurationManager.AppSettings["AdobeReaderFilePath"].ToString(); proc.StartInfo.Arguments = String.Format(@"/p /h {0}", pdfFileName); proc.StartInfo.UseShellExecute = false; proc.StartInfo.CreateNoWindow = true; proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; proc.Start(); if (proc.HasExited == false) { proc.WaitForExit(10000); } proc.EnableRaisingEvents = true; proc.Close(); KillAdobe("AcroRd32");
Я не могу сделать это, используя значения по умолчанию на самом принтере, поэтому надеюсь на какой-то параметр, который позволяет контролировать параметры печати. Возможно ли это?
Заранее спасибо.
Что я уже пробовал:
В результате долгого поиска не удалось найти ни полного списка параметров AcroRD32, ни какой-либо достойной документации для него.
Richard MacCutchan
Попробуйте набрать acrord32 /h или /? в командной строке; он может перечислить параметры.
Member 13166671
Привет, Ричард. Хорошая мысль, но ни то, ни другое не работает. Использование /h игнорируется, а /? просто открывает интерфейс. Но все равно спасибо.