我已成功使用办公室互操作打印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。(例如,一页上有四页)
当我上传时,这两种格式不支持任何免费的,无限制的特权库。所以,我的下一个方法是更改defaultprinter设置。在Windows上,我发现在控制面板上,我可以手动更改双面打印或多页打印的打印机设置。如何以编程方式更改此设置?
答案 0 :(得分:2)
那里有免费的PDF库。 (例如,iTextSharp是精细iText的C#端口,它可以轻松地进行2对1和4对1页面转换。)但是那些更专注于操纵PDF和类似文档以生成更多文档,以及不会公开详细的打印控件。
如果那些人没有为你做,你可以使用.NET或ActiveX互操作来自动化IE或Adobe Reader,或类似的应用程序,可以阅读PDF并具有打印机支持?它们随时可用,并且它们公开的ActiveX控件可能具有与这些打印机设置相对应的内容。
在用户级别调整默认打印机设置可能会产生不良副作用。