DocX操作word生成報表

2022-03-02 14:55:39 字數 3335 閱讀 4962

docx是乙個在不需要安裝word的情況下對word進行操作的開源輕量級.net元件,是由愛爾蘭的乙個叫cathal coffey的博士生開發出來的。docx使得操作word非常輕便,有利於減輕開發負擔,提公升程式效率。docx在codeplex和github上都有開源。

install-package docx
用docx需要.net framework4.0和vs2010或更高版本。

docx document = docx.create(@"docs\helloworld.docx")

docx document = docx.load(@"docs\helloworld.docx")

var paragraph = document.insertbookmark("firstbookmark");
如果知道乙個書籤的書簽名,可以直接得到。

var b = document.bookmarks["書籤1"];

document.bookmarks["書籤1"].settext("hello world!");

document.bookmarks["書籤2"].paragraph.insertpicture(@"pic.jpg");

document.bookmarks["書籤3"].paragraph.inserttableafterself(t);//t是table型別

document.insertsectionpagebreak();//分節符

paragraph p = document.insertparagraph();

p.insertpagebreakafterself();//分頁符

table t = document.addtable(3, 4);//三行四列

table t = document.addtable(3,4);

t.mergecellsincolumn(0, 0, 1);//public void mergecellsincolumn(int columnindex, int startrow, int endrow);豎向合併

t.rows[0].mergecells(1, 2);//public void mergecells(int startindex, int endindex);橫向合併

注:合併單元格的時候注意,最好先豎向合併,再橫向合併,以免報錯,因為橫向合併會改變列數。

開源**: (裡面的示例**很適合初學者學習)

高質量部落格推薦:

利用docx操作word的開源小專案:

參考:docx是乙個在不需要安裝word的情況下對word進行操作的開源輕量級.net元件,是由愛爾蘭的乙個叫cathal coffey的博士生開發出來的。docx使得操作word非常輕便,有利於減輕開發負擔,提公升程式效率。docx在codeplex和github上都有開源。

install-package docx
用docx需要.net framework4.0和vs2010或更高版本。

docx document = docx.create(@"docs\helloworld.docx")

docx document = docx.load(@"docs\helloworld.docx")

var paragraph = document.insertbookmark("firstbookmark");
如果知道乙個書籤的書簽名,可以直接得到。

var b = document.bookmarks["書籤1"];

document.bookmarks["書籤1"].settext("hello world!");

document.bookmarks["書籤2"].paragraph.insertpicture(@"pic.jpg");

document.bookmarks["書籤3"].paragraph.inserttableafterself(t);//t是table型別

document.insertsectionpagebreak();//分節符

paragraph p = document.insertparagraph();

p.insertpagebreakafterself();//分頁符

table t = document.addtable(3, 4);//三行四列

table t = document.addtable(3,4);

t.mergecellsincolumn(0, 0, 1);//public void mergecellsincolumn(int columnindex, int startrow, int endrow);豎向合併

t.rows[0].mergecells(1, 2);//public void mergecells(int startindex, int endindex);橫向合併

注:合併單元格的時候注意,最好先豎向合併,再橫向合併,以免報錯,因為橫向合併會改變列數。

開源**: (裡面的示例**很適合初學者學習)

高質量部落格推薦:

利用docx操作word的開源小專案:

參考:

報表工具如何生成 word 報告?

1.報表工具中直接排版 2.通過 api 將報表插入到 word 在報表工具中直接排版實現 word 報告 這種方式的好處在於可以讓資料動態變化,圖表設計更加靈活,不會因為資料不同,還要重複修改檔案,並且可以隨時在 web 端檢視,也可進行列印打出操作。但這種方式也存在不足之處,在報表工具中做 wo...

報表工具如何生成 word 報告?

1.報表工具中直接排版 2.通過 api 將報表插入到 word 在報表工具中直接排版實現 word 報告 這種方式的好處在於可以讓資料動態變化,圖表設計更加靈活,不會因為資料不同,還要重複修改檔案,並且可以隨時在 web 端檢視,也可進行列印打出操作。但這種方式也存在不足之處,在報表工具中做 wo...

DocX開源WORD操作元件的學習系列一

docx開源word操作元件的學習系列一 docx開源word操作元件的學習系列二 docx開源word操作元件的學習系列三 docx開源word操作元件的學習系列四 docx是乙個在不需要安裝word的情況下對word進行操作的開源輕量級.net元件,是由愛爾蘭的乙個叫cathal coffey的...