ASP.NET(C#)生成Word文档

//仅供参考
using MSWord = Microsoft.Office.Interop.Word;
using System.IO;
using Sytem.Reflection;

string filePath;
string content;
MSWord.Application wordApp;
MSWord.Document wordDoc;
filePath
= @"d:\testWord.docx";
wordApp
= new MSWord.ApplicationClass();

if(File.Exists(filePath))
{
  File.Delete(filePath);
}

Object nothing
= Missing.Value;
wordDoc
= wordApp.Documents.Add(ref nothing,ref nothing,ref nothing,ref nothing);

/* 1、写入普通文本   */
content
= "Hello!";
wordDoc.Paragraphs.Last.Range.Text
= content;
object format = MSWord.WdSaveFormat.wdFormatDocument97;

/* 2、 写入需要的特殊格式文本 */
//写入15号字体
content = "这一行是15号字体的文本";
wordDoc.Paragraphs.Last.Range.Font.Size
= 15;
wordDoc.Paragraphs.Last.Range.Text
= content;

//写入斜体文本
content = "这一行是斜体文本";
wordDoc.Paragraphs.Last.Range.Font.Italic
= 1;
wordDoc.Paragraphs.Last.Range.Text
= content;

//写入红色下划线文本
content = "这一行是红色下划线的文本";
wordDoc.Paragraphs.Last.Range.Font.Underline
= MSWord.WdUnderline.wdUnderlineThick;
wordDoc.Paragraphs.Last.Range.Font.UnderlineColor
= MSWord.WdColor.wdColorRed;
wordDoc.Paragraphs.Last.Range.Text
= content;

/* 3、写入表格   */
//表格对象
MSWord.Table table = wordDoc.Tables.Add(wordApp.Selection.Range,5,
     
5,ref nothing,ref nothing);
table.Border.Enable
= 1;
for(int i=1;; i<6; i++)
{
 
for(int j=1; j<6; j++)
  {
    table.Cell(i,j).Range.Text
= ""+i+"","+j+"";
  }
}

/* 4、插入图片   */
string jpgName = @"d:\logo.jpg";
Object range
= wordDoc.Paragraphs.Last.Range;
Object linkToFile
= false;
Object saveWithDocument
= true;
wordDoc.InlineShapes.AddPicture(jpgName,
ref linkToFile,ref saveWithDocument,ref range);

wordDoc.SaveAs(ref filePath, ref format, ref nothing, ref nothing, ref nothing, ref nothing, ref nothing, ref nothing, ref nothing, ref nothing, ref nothing, ref nothing, ref nothing, ref nothing, ref nothing, ref nothing);
wordDoc.Close(ref nothing, ref nothing,ref nothing);
 wordApp.Quit(ref nothing,ref nothing,ref nothing);

你可能感兴趣的:(asp.net)