各位大侠好,我在做打印时遇到这样个问题,用adobe pdf虚拟打印机打印office文档时读取的是office文档中的自定义设置而非虚拟打印机里设置的首选项,例如,你的虚拟打印机是设置A3纸,而excel在上次打印时是手工选的A4值,那么这个A4就被记录下来,在下次使用代码打印
时就自动读取这个A4设置而非打印机设置的A3,每一个office文档都有自己的自定义设置,而又不知道哦啊这些设置存在何处,如何修改。
敬请各位赐教,有什么好的解决方法。
            ProcessStartInfo pProcInfo = new ProcessStartInfo();
            pProcInfo.FileName = @"D:\\TestPrint\\test.xlsx";
            pProcInfo.Verb = "Print";
            pProcInfo.CreateNoWindow = true;
            pProcInfo.WindowStyle = ProcessWindowStyle.Minimized;
            Process pMyProc = Process.Start(pProcInfo);
            pMyProc.Close();

解决方案 »

  1.   

    只遇到过打印报表的情况winform里添加打印功能将窗体打印出来了 后来直接生成文件 然后单纯对文件进行打印
      

  2.   

    打印机的设置时存在注册表里,这个可以更改,问题是我在打印时执行的并不是打印机的默认设置,而是word,excel里记忆的打印设置,不知各位明白否?
      

  3.   

    针对这个问题好像无法做到统一执行打印机设置,对于office文档只能在打印之前每个文件都进行一次设置,例如excel里面,sheet.PageSetup中可以设置papersize及Orientation。
    大家有经验请及时分享!