-1

pdfsharpを使用してC#で印刷ダイアログボックスを開く方法?? これはドキュメントを印刷するための私のコードですが、印刷ダイアログボックスを開いていません

            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 =
              @"C:\Program Files\Adobe\Reader 11.0\Reader\AcroRd32.exe";
            proc.StartInfo.Arguments = String.Format(@"/p /h {0}", pdfFileName);
            proc.StartInfo.UseShellExecute = false;
            proc.StartInfo.CreateNoWindow = true;

            proc.Start();
            proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
            if (proc.HasExited == false)
            {
                proc.WaitForExit(10000);
            }

            proc.EnableRaisingEvents = true;

            proc.Close();
            KillAdobe("AcroRd32");
            return true;
4

2 に答える 2

1

Adobe Reader FAQ からの逐語的な回答...

AcroRd32.exe /p パス名 — Adob​​e Reader を実行し、[印刷] ダイアログ ボックスを表示します。

AcroRd32.exe /t path "printername" "drivername" "portname" — Adob​​e Reader を起動し、[印刷] ダイアログ ボックスを非表示にして、パスを完全に指定する必要があるファイルを印刷します。

印刷ダイアログ ボックスを表示せずにファイルを印刷する場合は、2 番目のオプションを使用する必要があります。

于 2013-09-17T12:57:15.750 に答える
0

これを探していると思います。

  System.Windows.Controls.PrintDialog dialogue = new System.Windows.Controls.PrintDialog();

  DialogResult dr = dialogue.ShowDialog();
  if( dr == DialogResult.OK)
   {
  // Do something
   }

   dialogue.Dispose();

また

        PrintDocument pd = new PrintDocument();
        pd.PrintPage += new PrintPageEventHandler(PrintPage);
        PrintDialog pdi = new PrintDialog();
        pdi.Document = pd;
        if (pdi.ShowDialog() == DialogResult.OK)
        {
            pd.DocumentName = documentName;
            pd.Print();
        }
        else
        {
           MessageBox.Show("Print Cancelled");
        }

http://www.codeproject.com/Questions/289705/how-to-open-print-dialog-box-in-my-csharp-applicat

于 2013-09-17T12:26:10.547 に答える