在.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檔案
Code
1
using System;
2
using System.Data;
3
using System.Configuration;
4
using System.Web;
5
using System.Web.Security;
6
using System.Web.UI;
7
using System.Web.UI.WebControls;
8
using System.Web.UI.WebControls.WebParts;
9
using System.Web.UI.HtmlControls;
10
using Microsoft.Office.Core;
11
using Microsoft.Office.Interop.Word;
12
13
/// <summary>
14
/// ClassWord 的摘要說明
15
/// </summary>
16
public class ClassWord
17
{
18
Word.Application wApp = null;
19
Word.Document wDoc = null, oDoc = null;
20
Word.Documents Docs = null;
21
private object strTemplate = "";
22
private object oEndOfDoc = "//endofdoc";
23
private object oMissing = System.Reflection.Missing.Value;//System.Reflection.Missing.Value;
24
Word.Range range = null;
25
Word.Table oTable = null;
26
27
建立一個空word文檔#region 建立一個空word文檔
28
public void AddDocuments()
29
{
30
//建立一個word文檔
31
wApp = new Word.Application();
32
wDoc = new Word.Document();
33
wApp.Caption = "我的Word練習";//文檔副标題
34
wApp.Visible = true;//顯示word文檔
35
wDoc = wApp.Documents.Add(ref oMissing, ref oMissing, ref oMissing, ref oMissing);
36
Docs = wApp.Documents;
37
range = wDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;
38
39
object page=Word.WdPageNumberAlignment.wdAlignPageNumberCenter;
40
object firstPage = true;
41
wApp.Selection.Sections[1].Footers[Word.WdHeaderFooterIndex.wdHeaderFooterPrimary].PageNumbers.Add(ref page, ref firstPage);
42
43
}
44
#endregion
45
46
添加标題文字#region 添加标題文字
47
public void AddTextTitle(string Str, float size)
48
{
49
range = wDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;
50
range.Text = Str;
51
range.Font.Size = size;//字型大小
52
range.Font.Bold = 1;//粗體
53
range.Font.Color = Word.WdColor.wdColorBlack;//所選字型顔色
54
range.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter;//設定段落居中
55
}
56
#endregion
57
58
插入圖檔#region 插入圖檔
59
//向文檔中插入圖檔
60
public void AddImage(string FileName)
61
{
62
range = wDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;
63
object LinkToFile = false;
64
object SaveWithDocument = true;
65
object Anchor = range;
66
Docs.Application.ActiveDocument.InlineShapes.AddPicture(FileName, ref LinkToFile, ref SaveWithDocument, ref Anchor);
67
range.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter;//設定段落居中
68
//oDoc.Application.ActiveDocument.InlineShapes[1].Width = 150f;//圖檔寬度
69
//oDoc.Application.ActiveDocument.InlineShapes[1].Height = 60f;//圖檔高度
70
}
71
#endregion
72
73
/// <summary>
74
/// 下标
75
/// </summary>
76
public void AddParagraph(string Str, float size, int bold, int Sub)
77
{
78
range = wDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;
79
range.Text = Str;
80
range.Font.Size = size;//字型大小
81
range.Font.Bold = bold;//粗體
82
range.Font.Subscript = Sub;//是否為下标1為下标
83
range.Font.Color = Word.WdColor.wdColorBlack;//所選字型顔色
84
range.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphLeft;//設定段落居左
85
range.ParagraphFormat.LineSpacing = 2f;
86
}
87
/// <summary>
88
/// 所選字型顔色(紅色)
89
/// </summary>
90
public void AddTextColorRed(string Str, float size, int bold)
91
{
92
range = wDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;
93
range.Text = Str;
94
range.Font.Size = size;//字型大小
95
range.Font.Bold = bold;//粗體
96
range.Font.Color = Word.WdColor.wdColorRed;//所選字型顔色
97
range.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphLeft;//設定段落居左
98
range.ParagraphFormat.LineSpacing = 2f;
99
}
100
101
102
103
104
}
105
接下來添加一個Web項目,拖一個Button,在其.cs檔案中寫入往word文檔輸入的内容,下面給出代碼:
Code
1
protected void Button1_Click(object sender, EventArgs e)
2
{
3
ClassWord word = new ClassWord();
4
word.AddDocuments();
5
word.AddTextTitle("2008,中國加油!/n", 18f);
6
string str = " 可視化設計工具(如 Microsoft Visual Studio 2005)可以簡化控件的開發過程,但并不是建立或生成自定義控件的必不可少的工具。";
7
word.AddParagraph(str, 16, 0, 0);
8
}
此時就可以直接浏覽頁面點選按鈕,即可建立一個word文檔,
标題為" 2008,中國加油",小二,加粗字型
内容為
可視化設計工具(如 Microsoft Visual Studio 2005 )可以簡化控件的開發過程,但并不是建立或生成自定義控件的必不可少的工具。
這樣就完成對word中寫入内容,還有其他的内容如插入圖檔,表格(自己設計表格的樣式,合并單元格以及文字的
上下标等等,在以後分别介紹).