Параметры Adobe Reader

#c# #pdf #printing #process #adobe

#c# #PDF #печать #процесс #adobe

Вопрос:

Я пытаюсь сохранить PDF-файл как новый PDF, но распечатываю его (обязательно), для этого я использую Adobe Acrobat, потому что это дает мне возможность вводить параметры. Дело в том, что мне нужно сделать это тихо (ни одно окно не может быть увидено). Итак, мне нужно установить принтер, путь к моему файлу и место назначения вывода. Как я уже сказал, мне нужно «распечатать это» как новый PDF-файл, поэтому я использую для этого Microsoft Print to PDF (я не знаю, лучший ли это вариант).

Большое вам спасибо!

             string file = name;
            string pathFile = "C:\DfPrinter\"   name;
            ProcessStartInfo infoPrintPdf = new ProcessStartInfo(); 

               
string printerName = "Microsoft Print to PDF";
                infoPrintPdf.FileName = "C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe";
                infoPrintPdf.Arguments = string.Format("/t"   " '"   pathFile   "'"  "' "   "'" printerName "'");
                infoPrintPdf.CreateNoWindow = true;
                infoPrintPdf.UseShellExecute = false;
                infoPrintPdf.WindowStyle = ProcessWindowStyle.Hidden;
                Process printPdf = new Process();
                printPdf.StartInfo = infoPrintPdf;
                printPdf.Start();

          

  System.Threading.Thread.Sleep(10000);

       

 if (!printPdf.CloseMainWindow())              
            printPdf.Kill(); printPdf.WaitForExit();
  

Ответ №1:

Я не думаю, что Acrobat Reader может печатать в автоматическом режиме, но вы могли бы рассмотреть возможность использования командной строки Win2PDF «printpdf»:

 win2pdfd.exe printpdf "filename.pdf" Win2PDF "newfilename.pdf"
  

Это автоматически печатает PDF-файл в новый PDF-файл, указанный в «newfilename», с помощью принтера Win2PDF.