【问题标题】:Adobe Reader ParametersAdobe Reader 参数
【发布时间】:2024-01-08 19:42:01
【问题描述】:

我正在尝试将 pdf 文件另存为新的 pdf,但要打印它(必需),我使用 Adob​​e 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();

【问题讨论】:

    标签: c# pdf printing process adobe


    【解决方案1】:

    我不认为 Acrobat Reader 可以静默打印,但您可以考虑使用Win2PDF "printpdf" command line

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

    这会使用 Win2PDF 打印机以静默方式将 PDF 打印到由“newfilename”指定的新 PDF。

    【讨论】: