Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 有没有办法更改打印机设置?_.net_Pdf_Printing_Printers - Fatal编程技术网

.net 有没有办法更改打印机设置?

.net 有没有办法更改打印机设置?,.net,pdf,printing,printers,.net,Pdf,Printing,Printers,我已经成功地使用office互操作系统打印了MS office文档,但pdf或hwp等文档让我很烦恼 只是打印那些文件并不难。 我只需要打印这段代码 Process process = new Process(); process.StartInfo.FileName = fileInfo.FullName; process.StartInfo.Verb = "Print";

我已经成功地使用office互操作系统打印了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上,我发现在控制窗格中,我可以手动更改双面打印或多页打印的打印机设置。如何以编程方式更改此设置

那里有免费的PDF库。(例如,iTextSharp是fine iText的一个C#端口,它可以轻松地进行2对1和4对1页面转换。)但它们更侧重于操作PDF和类似文档以生成更多文档,并且不会公开详细的打印控制

如果这些都不适合您,您是否可以使用.NET或ActiveX interop自动化IE或Adobe Reader,或类似的可以读取PDF并支持打印机的应用程序?它们随时可用,并且它们公开的ActiveX控件可能具有与这些打印机设置对应的内容


在用户级别旋转默认打印机设置可能会产生不希望的副作用。

谢谢!我要试试看!谢谢!。使用iTextSharp操作页面,然后使用我的源代码打印可能会很好。如果我成功了,我会发布我的代码。再次感谢!