【问题标题】:Print PDF file with printdialog vb.net使用 printdialog vb.net 打印 PDF 文件
【发布时间】:2020-09-17 18:03:12
【问题描述】:

我正在尝试使用 printdialog 选项打印外部 pdf 文件,但该文件是使用预先确定的打印机配置打印的

Dim result As DialogResult = PrintDialog1.ShowDialog()
        If (result = DialogResult.OK) Then
            Dim psi As New ProcessStartInfo
            psi.UseShellExecute = True
            psi.Verb = "print"
            psi.WindowStyle = ProcessWindowStyle.Hidden
            psi.Arguments = PrintDialog1.PrinterSettings.PrinterName.ToString()
            psi.FileName = "file.pdf"
            Process.Start(psi)
        End If

【问题讨论】:

  • String 类型的属性上调用ToString 有什么意义?

标签: vb.net pdf printing printdialog


【解决方案1】:

您需要使用“PrintTo”动词而不是“Print”动词。如果打印机名称中可能包含空格,您还需要将打印机名称用引号引起来。我建议让你的代码更简洁一点:

Process.Start(New ProcessStartInfo("file.pdf",
                                   $"""{PrintDialog1.PrinterSettings.PrinterName}""") With {.Verb = "printto",
                                                                                            .UseShellExecute = True,
                                                                                            .WindowStyle = ProcessWindowStyle.Hidden})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-26
    • 2011-05-14
    相关资源
    最近更新 更多