zoukankan      html  css  js  c++  java
  • WOrd ,excel实现打印功能

                PrintDocument print = new PrintDocument();
                string sDefault = print.PrinterSettings.PrinterName;//默认打印机名
                string s = "";
                foreach (string sPrint in PrinterSettings.InstalledPrinters)//获取所有打印机名称
                {
                    s = sPrint;
                }
                return;
                OpenFileDialog fileDialog = new OpenFileDialog();
                //fileDialog.Title = "请选择文件";
                //fileDialog.Filter = "excel03文件(*.xls)|*.xls";
                //fileDialog.FilterIndex = 1;
                //fileDialog.RestoreDirectory = true;

                if (fileDialog.ShowDialog() == DialogResult.OK)
                {
                    #region excel
                    //Microsoft.Office.Interop.Excel.ApplicationClass xlsApp = new Microsoft.Office.Interop.Excel.ApplicationClass();
                    //xlsApp.Visible = true;
                    //object oMissing = System.Reflection.Missing.Value;
                    //Microsoft.Office.Interop.Excel.Workbook xlsWorkbook = xlsApp.Workbooks.Open(fileDialog.FileName, 0, true, 5, oMissing, oMissing, true, 1, oMissing, false, false, oMissing, false, oMissing, oMissing);
                    //Microsoft.Office.Interop.Excel.Worksheet xlsWorksheet = (Microsoft.Office.Interop.Excel.Worksheet)xlsWorkbook.Worksheets[1];
                    ////xlsWorksheet.PrintPreview(null);
                    //xlsWorksheet.PrintOut(1, 2, 1, false, oMissing, true, false, oMissing);
                    //xlsApp.Visible = false;
                    //xlsWorksheet = null;
                    #endregion
                    #region word
                    object wordFile = fileDialog.FileName;
                    object oMissing = Missing.Value;
                    object copies = "1";
                    object oTrue = true;
                    object oFalse = false;
                    object doNotSaveChanges = Microsoft.Office.Interop.Word.WdSaveOptions.wdDoNotSaveChanges;
                    Microsoft.Office.Interop.Word.Application appWord = new Microsoft.Office.Interop.Word.Application();
                    appWord.Visible = false;
                    appWord.DisplayAlerts = Microsoft.Office.Interop.Word.WdAlertLevel.wdAlertsNone;
                    string defaultPrinter = appWord.ActivePrinter;
                    Microsoft.Office.Interop.Word.Document doc = appWord.Documents.Open(
                        ref wordFile ,
                        ref oMissing,
                        ref oTrue ,
                        ref oFalse ,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing);
                    //弹出打印设置
                    //appWord.Dialogs[Microsoft.Office.Interop.Word.WdWordDialog.wdDialogFilePrint].Show(ref oMissing);
                    //appWord.Visible = false;
                    appWord.ActivePrinter = "hp3030 ";
                    doc.PrintOut(
                        ref oTrue,
                        ref oFalse,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref copies,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing,
                        ref oMissing);
                    appWord.ActivePrinter = defaultPrinter;
                    doc.Close(ref doNotSaveChanges, ref oMissing, ref oMissing);
                    appWord.Quit(ref oMissing, ref oMissing, ref oMissing);
                    doc = null;
                    appWord = null;
                    GC.Collect();
                    #endregion word

                }

  • 相关阅读:
    POJ 3660 Cow Contest
    HDOJ 2093 sscanf的使用,字符串对齐,快排
    HDOJ 2091 空格的特殊输入输出格式
    COJ 1081: 集训队分组
    HDOJ 2948 错排公式
    POJ 1936 All in All
    POJ 1035 Spell checker
    HDOJ 2094 set和map的使用
    HDOJ 2036 多边形的面积
    HDOJ 1166 敌兵布阵
  • 原文地址:https://www.cnblogs.com/swarb/p/9924430.html
Copyright © 2011-2022 走看看