asp.net 根据模版下载word文档

 最近做HR系统,要求可以根据合同模版下载员工的合同,其中合同中要求填写的信息系统自动补全,那么就需要根据word模版下载word文档。我使用了第三方控件aspose.words.dll来实现的。

案例如下:

1、引用aspose.words.dll

2、在word模版中创建标签,就是把需要填空的数据创建成一个个标签,然后取数据。

3、word模版标签创建好了,下一步就是在代码给相应的标签赋值了。

我的案例代码:

                        string tmppath = Server.MapPath("/offers/模版.doc");
                        string emp_name = "张三";
                        string emp_sex = "先生";
                        string emp_dept = " 销售部";
                        string emp_pos = "销售经理";
                        string emp_jbgz = "3000元";
                        string emp_intime = "2010-01-01";
						
                        Document doc = new Document(tmppath); //载入模板 
                            DocumentBuilder mBuilder = new DocumentBuilder(doc);

                        //通过书签的形式向word模板中插入内容;
                            if (doc.Range.Bookmarks["emp_name"] != null)
                        {
                            Bookmark mark = doc.Range.Bookmarks["emp_name"];
                            mark.Text = emp_name;
                        }
                        if (doc.Range.Bookmarks["emp_sex"] != null)
                        {
                            Bookmark mark = doc.Range.Bookmarks["emp_sex"];
                            mark.Text = emp_sex;
                        }
                        if (doc.Range.Bookmarks["emp_dept"] != null)
                        {
                            Bookmark mark = doc.Range.Bookmarks["emp_dept"];
                            mark.Text = emp_dept;
                        }
                        if (doc.Range.Bookmarks["emp_pos"] != null)
                        {
                            Bookmark mark = doc.Range.Bookmarks["emp_pos"];
                            mark.Text = emp_pos;
                        }
                        if (doc.Range.Bookmarks["emp_jbgz"] != null)
                        {
                            Bookmark mark = doc.Range.Bookmarks["emp_jbgz"];
                            mark.Text = emp_jbgz;
                        }
                        if (doc.Range.Bookmarks["emp_intime"] != null)
                        {
                            Bookmark mark = doc.Range.Bookmarks["emp_intime"];
                            mark.Text = emp_intime;
                        }
                        doc.Save(emp_name + "的工作合同.doc", SaveFormat.Doc, SaveType.OpenInWord, Response); 


完成。

发布了86 篇原创文章 · 获赞 19 · 访问量 56万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章