【问题标题】:C# Is there a way to change the printer setting?C# 有没有办法更改打印机设置?
【发布时间】:2015-06-26 16:16:18
【问题描述】:

我已经成功地使用 office interops 打印 MS office 文档,但是 pdf 或 hwp 等文档困扰着我。

仅打印这些文件并不难。 这段代码就是我需要打印的全部内容。

                Process process = new Process();
                process.StartInfo.FileName = fileInfo.FullName;
                process.StartInfo.Verb = "Print";
                process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
                process.Start();

但是,我的意图是,我想在一页中打印多页 pdf 或 hwp。(例如,单页四页)

正如我搜索的那样,这两种格式不支持任何免费的、无限制的特权库。所以,我的下一个方法是更改​​默认打印机设置。在 Windows 上,我发现在控制面板上,我可以手动更改双面打印或多页打印的打印机设置。如何以编程方式更改它?

【问题讨论】:

    标签: .net pdf printing printers


    【解决方案1】:

    那里有免费的 PDF 库。 (例如,iTextSharp 是精细 iText 的 C# 端口,可以轻松进行 2 对 1 和 4 对 1 页面转换。)但这些更专注于处理 PDF 和类似文档以生成更多文档,并且不会公开详细的打印控件。

    如果这些都不适合您,您是否可以使用 .NET 或 ActiveX 互操作来自动化 IE 或 Adob​​e Reader,或者可以读取 PDF 并支持打印机的类似应用程序?它们很容易获得,而且它们公开的 ActiveX 控件可能包含与这些打印机设置相对应的内容。

    在用户级别调整默认打印机设置可能会产生不良副作用。

    【讨论】:

    • 谢谢!我试试看!
    • 非常感谢!使用 iTextSharp 操作页面,然后使用我的源打印可能会很好。如果我成功了,我会发布我的代码。再次感谢!
    猜你喜欢
    • 1970-01-01
    • 2014-04-21
    • 2021-12-24
    • 1970-01-01
    • 2020-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多