加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 在打印文档时设置打印选项

发布时间:2020-12-15 21:59:59 所属栏目:百科 来源:网络整理
导读:我想在我的打印作业上设置我的设置. 例如,我想在1张A4纸上打印4页pdf文件. 我该怎么做? 这是我打印pdf文件的代码: private void SendToPrinter() { OpenFileDialog ofd = new OpenFileDialog(); if (ofd.ShowDialog() == DialogResult.OK) { ProcessStartI
我想在我的打印作业上设置我的设置.
例如,我想在1张A4纸上打印4页pdf文件.
我该怎么做?

这是我打印pdf文件的代码:

private void SendToPrinter()
    {
        OpenFileDialog ofd = new OpenFileDialog();

        if (ofd.ShowDialog() == DialogResult.OK)
        {
            ProcessStartInfo info = new ProcessStartInfo();
            info.Verb = "print";
            info.FileName = ofd.FileName;
            info.CreateNoWindow = true;
            info.WindowStyle = ProcessWindowStyle.Hidden;

            Process p = new Process();
            p.StartInfo = info;
            p.Start();

            p.WaitForInputIdle();
            System.Threading.Thread.Sleep(3000);
            if (false == p.CloseMainWindow())
                p.Kill();
        }
    }

解决方法

你无法使用info.Verb =“print”来做到这一点.通过将Verb设置为print,您基本上使用的是windows shell命令print,它接受两个参数:Filename和Printer device name.

如果要打印具有特定打印设置的pdf文件,则必须使用可以使用命令行参数打印pdf的第三方软件(如Ghostscript).有关更多信息,请参见this文章.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读