天天看點

net對word的操作

在.net環境裡對word的操作主要包括:

1.建立word文檔

2.往word中寫入内容

3.儲存

主要是往word寫入的内容,包括标題,表格等等.

在word的版本中.net支援2003版本,

在建立word之前要做的工作:

1>建立一個.net的項目

2>添加引用:選擇.Net->選擇Microsoft Word 11.0 Object Library

3>添加引用:在office安裝程式中找到Office.dll和Microsoft.Office.Interop.Word.dll。

下面就可以編寫代碼了

以下是給出例子加以講解,對word的操作就變得非常簡單了,網上的許多資料都很繁瑣

在設計的時候,可以先建立一個操作類這樣就可以節省很多代碼,而且用起來非常的友善

下面是ClassWord.cs檔案

net對word的操作
net對word的操作

Code

  1

net對word的操作

using System;

  2

net對word的操作

using System.Data;

  3

net對word的操作

using System.Configuration;

  4

net對word的操作

using System.Web;

  5

net對word的操作

using System.Web.Security;

  6

net對word的操作

using System.Web.UI;

  7

net對word的操作

using System.Web.UI.WebControls;

  8

net對word的操作

using System.Web.UI.WebControls.WebParts;

  9

net對word的操作

using System.Web.UI.HtmlControls;

 10

net對word的操作

using Microsoft.Office.Core;

 11

net對word的操作

using Microsoft.Office.Interop.Word;

 12

net對word的操作

 13

net對word的操作
net對word的操作

/// <summary>

 14

net對word的操作

/// ClassWord 的摘要說明

 15

net對word的操作

/// </summary>

 16

net對word的操作

public class ClassWord

 17

net對word的操作
net對word的操作
net對word的操作

{

 18

net對word的操作

    Word.Application wApp = null;

 19

net對word的操作

    Word.Document wDoc = null, oDoc = null;

 20

net對word的操作

    Word.Documents Docs = null;

 21

net對word的操作

    private object strTemplate = "";

 22

net對word的操作

    private object oEndOfDoc = "//endofdoc";

 23

net對word的操作

    private object oMissing = System.Reflection.Missing.Value;//System.Reflection.Missing.Value;

 24

net對word的操作

    Word.Range range = null;

 25

net對word的操作

    Word.Table oTable = null;

 26

net對word的操作

 27

net對word的操作
net對word的操作

    建立一個空word文檔#region 建立一個空word文檔

 28

net對word的操作

    public void AddDocuments()

 29

net對word的操作
net對word的操作
net對word的操作

{

 30

net對word的操作

        //建立一個word文檔

 31

net對word的操作

        wApp = new Word.Application();

 32

net對word的操作

        wDoc = new Word.Document();

 33

net對word的操作

        wApp.Caption = "我的Word練習";//文檔副标題

 34

net對word的操作

        wApp.Visible = true;//顯示word文檔          

 35

net對word的操作

        wDoc = wApp.Documents.Add(ref oMissing, ref oMissing, ref oMissing, ref oMissing);

 36

net對word的操作

        Docs = wApp.Documents;

 37

net對word的操作

        range = wDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;

 38

net對word的操作

 39

net對word的操作

        object page=Word.WdPageNumberAlignment.wdAlignPageNumberCenter;

 40

net對word的操作

        object firstPage = true;

 41

net對word的操作

        wApp.Selection.Sections[1].Footers[Word.WdHeaderFooterIndex.wdHeaderFooterPrimary].PageNumbers.Add(ref page, ref firstPage);

 42

net對word的操作

 43

net對word的操作

    }

 44

net對word的操作

    #endregion

 45

net對word的操作

 46

net對word的操作
net對word的操作

    添加标題文字#region 添加标題文字

 47

net對word的操作

    public void AddTextTitle(string Str, float size)

 48

net對word的操作
net對word的操作
net對word的操作

{

 49

net對word的操作

        range = wDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;

 50

net對word的操作

        range.Text = Str;

 51

net對word的操作

        range.Font.Size = size;//字型大小

 52

net對word的操作

        range.Font.Bold = 1;//粗體            

 53

net對word的操作

        range.Font.Color = Word.WdColor.wdColorBlack;//所選字型顔色

 54

net對word的操作

        range.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter;//設定段落居中

 55

net對word的操作

    }

 56

net對word的操作

    #endregion

 57

net對word的操作

 58

net對word的操作
net對word的操作

    插入圖檔#region 插入圖檔

 59

net對word的操作

    //向文檔中插入圖檔

 60

net對word的操作

    public void AddImage(string FileName)

 61

net對word的操作
net對word的操作
net對word的操作

{

 62

net對word的操作

        range = wDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;

 63

net對word的操作

        object LinkToFile = false;

 64

net對word的操作

        object SaveWithDocument = true;

 65

net對word的操作

        object Anchor = range;

 66

net對word的操作

        Docs.Application.ActiveDocument.InlineShapes.AddPicture(FileName, ref LinkToFile, ref SaveWithDocument, ref Anchor);

 67

net對word的操作

        range.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter;//設定段落居中

 68

net對word的操作

        //oDoc.Application.ActiveDocument.InlineShapes[1].Width = 150f;//圖檔寬度

 69

net對word的操作

        //oDoc.Application.ActiveDocument.InlineShapes[1].Height = 60f;//圖檔高度  

 70

net對word的操作

    }

 71

net對word的操作

    #endregion

 72

net對word的操作

 73

net對word的操作
net對word的操作

    /// <summary>

 74

net對word的操作

    /// 下标

 75

net對word的操作

    /// </summary>

 76

net對word的操作

    public void AddParagraph(string Str, float size, int bold, int Sub)

 77

net對word的操作
net對word的操作
net對word的操作

{

 78

net對word的操作

        range = wDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;

 79

net對word的操作

        range.Text = Str;

 80

net對word的操作

        range.Font.Size = size;//字型大小

 81

net對word的操作

        range.Font.Bold = bold;//粗體            

 82

net對word的操作

        range.Font.Subscript = Sub;//是否為下标1為下标

 83

net對word的操作

        range.Font.Color = Word.WdColor.wdColorBlack;//所選字型顔色

 84

net對word的操作

        range.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphLeft;//設定段落居左

 85

net對word的操作

        range.ParagraphFormat.LineSpacing = 2f;

 86

net對word的操作

    }

 87

net對word的操作
net對word的操作

    /// <summary>

 88

net對word的操作

    /// 所選字型顔色(紅色)

 89

net對word的操作

    /// </summary>

 90

net對word的操作

    public void AddTextColorRed(string Str, float size, int bold)

 91

net對word的操作
net對word的操作
net對word的操作

{

 92

net對word的操作

        range = wDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;

 93

net對word的操作

        range.Text = Str;

 94

net對word的操作

        range.Font.Size = size;//字型大小

 95

net對word的操作

        range.Font.Bold = bold;//粗體            

 96

net對word的操作

        range.Font.Color = Word.WdColor.wdColorRed;//所選字型顔色

 97

net對word的操作

        range.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphLeft;//設定段落居左

 98

net對word的操作

        range.ParagraphFormat.LineSpacing = 2f;

 99

net對word的操作

    }

100

net對word的操作

101

net對word的操作

102

net對word的操作

103

net對word的操作

104

net對word的操作

}

105

net對word的操作

接下來添加一個Web項目,拖一個Button,在其.cs檔案中寫入往word文檔輸入的内容,下面給出代碼:

net對word的操作
net對word的操作

Code

1

net對word的操作

 protected void Button1_Click(object sender, EventArgs e)

2

net對word的操作
net對word的操作
net對word的操作

{

3

net對word的操作

        ClassWord word = new ClassWord();

4

net對word的操作

        word.AddDocuments();

5

net對word的操作

        word.AddTextTitle("2008,中國加油!/n", 18f);

6

net對word的操作

        string str = "    可視化設計工具(如 Microsoft Visual Studio 2005)可以簡化控件的開發過程,但并不是建立或生成自定義控件的必不可少的工具。";

7

net對word的操作

        word.AddParagraph(str, 16, 0, 0);      

8

net對word的操作

    }

此時就可以直接浏覽頁面點選按鈕,即可建立一個word文檔,

标題為" 2008,中國加油",小二,加粗字型

内容為

 可視化設計工具(如 Microsoft Visual Studio  2005 )可以簡化控件的開發過程,但并不是建立或生成自定義控件的必不可少的工具。

這樣就完成對word中寫入内容,還有其他的内容如插入圖檔,表格(自己設計表格的樣式,合并單元格以及文字的

上下标等等,在以後分别介紹).

繼續閱讀