1. 程式人生 > >aspose.word使用簡單方法 加入特殊符號-https://www.cnblogs.com/louby/p/6456021.html

aspose.word使用簡單方法 加入特殊符號-https://www.cnblogs.com/louby/p/6456021.html

隨筆- 190  文章- 0  評論- 10 

aspose.word 使用簡單方法

 

aspose.word使用簡單方法

概念介紹

使用aspose生成word報表步驟:

  1. 載入word模板
  2. 提供資料來源
  3. 填充

載入模板

提供了4種過載方法

1

2

3

4

5

public Document();

public Document(Stream stream);

public Document(string fileName);

public Document(Stream stream, LoadOptions loadOptions);

public Document(string fileName, LoadOptions loadOptions);

模板製作

aspose在word模板中使用了域(MergeField),一個域相當於一個佔位符。域,可以從選單  插入->文件部件中定位選擇。

資料填充

目前有兩種情況:基本資訊和列表。

基本資訊:基本屬性,列表對應迴圈的資料結構,如DataTable.

對於列表,使用DataTable進行填充。

模板的製作:

表格以關鍵字TableStart開頭,TableEnd結束。關鍵字後加DataTable表名稱。e.g.TableStart:tableName

表頭中間,是具體欄位的名稱。

 序號 姓名 性別 年齡
 <TableStart:Name><<Index>>  <<Name>>  <<Sex>> <<Age>><<TableEnd:Name>>
Document doc = new Document(Server.MapPath("~\\templet") + "\\" + name);
doc.MailMerge.ExecuteWithRegions(DataTable)

 具體欄位

有兩種方式可以實現:

方法一、

1

2

3

DocumentBuilder builder = new DocumentBuilder(doc);

builder.MoveToMergeField(MergeFiled Name);

builder.Write(value;

這種方式,一次填充一個數據。但一個域欄位可以多次使用,並可以一次填充。

優點,可以靈活定製。如果要想一次替換多個域欄位,稍加改動同樣可以實現。

DocumentBuilder builder = new DocumentBuilder(doc);
while(builder.MoveToMergeField(MergeFiled Name))
{
    builder.Write(value;
}

方法二、

 doc.MailMerge.Execute(fieldNames, fieldValues);

在具體開發過程中,通常選擇Entity作為資料來源。可通過反射獲取資料。

如何獲取域欄位

1

doc.MailMerge.GetFieldNames()

方法返回的書string[]

 

方法三、

 根據屬性域新增特殊符號程式碼如下

        1.找到屬性域位置:

         builder.MoveToMergeField(item.Key);

       2.設定屬性域格式

       builder.ParagraphFormat.StyleIdentifier =Aspose.Words.StyleIdentifier.BodyText;
 
                                builder.Font.Name = "Wingdings 2";
                                builder.Font.Size = 8;
                                builder.Font.Italic = true;
                                builder.Write("R");

 操作方法:

來自:Office之家
連結:http://office.jb51.net/word/5200.html

來自:Office之家
連結:http://office.jb51.net/word/5200.html

 在單元格中輸入字母 R,然後把字型設定成 wingdings 2型別即可,如下圖所示關於字母與符號的對應表。

 0是複選框

 

 

來自:Office之家
連結:http://office.jb51.net/word/5200.htm

可參考:  http://www.cnblogs.com/lucika/p/3519275.html

     http://www.cnblogs.com/birchlee/archive/2013/05/23/3094632.html

文章屬於個人工作備忘錄,歡迎指正...