zoukankan      html  css  js  c++  java
  • C#调用word打印

    开发指南:

    1.  必须安装office.net开发包。

    2.  在工程的reference中添加com组件:Microsoft Word 11.0 Object Library

     1//打印的代码如下:
     2 Microsoft.Office.Interop.Word.Application app = null;
     3            Microsoft.Office.Interop.Word.Document doc = null;
     4            object missing = System.Reflection.Missing.Value;
     5            object templateFile = Application.StartupPath + @"\表单模版.doc";
     6            try
     7            {
     8                app = new Microsoft.Office.Interop.Word.ApplicationClass();
     9                doc = app.Documents.Add(ref templateFile, ref missing, ref missing, ref missing);
    10                try
    11                {
    12                    foreach (Microsoft.Office.Interop.Word.Bookmark bm in doc.Bookmarks)
    13                    {
    14                        bm.Select();
    15                        string item = bm.Name;
    16                        if (item.Equals("in_time"))
    17                        {
    18                            bm.Range.Text = table.inTime == null ? "" : table.inTime.ToString();
    19                        }

    20                        else if (item.Equals("car_id"))
    21                        {
    22                            bm.Range.Text = table.carID == null ? "" : table.carID.ToString();
    23                        }

    24                                       }

    25                }

    26                catch
    27                {
    28                }

    29                //打印
    30               doc.PrintOut(ref missing, ref missing, ref missing, ref missing, 
    31                    ref missing, ref missing, ref missing, ref missing, ref missing, 
    32                    ref missing, ref missing, ref missing, ref missing, ref missing, 
    33                    ref missing, ref missing, ref missing, ref missing);
    34                     }

    35            catch (Exception exp)
    36            {
    37                MessageBox.Show(exp.Message, this.Text);
    38            }

    39//销毁word进程
    40            finally
    41            {
    42               object saveChange = Microsoft.Office.Interop.Word.WdSaveOptions.wdDoNotSaveChanges;
    43                if (doc != null)
    44                    doc.Close(ref saveChange, ref missing, ref missing);
    45                if (app != null)
    46                    app.Quit(ref missing, ref missing, ref missing);
    47            }

    48 
    49

  • 相关阅读:
    qt5--创建控件的两种方式
    qt5-编码转换
    C++qt助手assistant
    C++opencv绘制几何图形
    C++opencv创建图像
    【全球软件大会】华为前端工程师分享:华为云官网的智能化实践
    图解 Redis丨这就是 RDB 快照,能记录实际数据的
    云小课 | 玩转HiLens Studio之快速订购HiLens Studio版本
    带你认识4种设计模式:代理模式、装饰模式、外观模式和享元模式
    线性表、顺序表和链表,你还分不清?
  • 原文地址:https://www.cnblogs.com/conquer/p/1111142.html
Copyright © 2011-2022 走看看