欢迎来到天天文库
浏览记录
ID:9061193
大小:35.86 KB
页数:4页
时间:2018-04-16
《用pageoffice实现批量转换导出word文档》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、用PageOffice实现C#ASP.NET批量转换导出Word文档在某些涉及到报表的项目开发中,可能经常会遇到需要批量的生成某些文档的操作,这些文档若是要点击一下,生成一个的话,就太浪费时间了。但若用FileMakerCtrl控件来实现的话就简单容易的多了。下面我就以批量转换10个Word文档为例来分享一下FileMakerCtrl控件的使用方法。第一步:请先安装PageOffice的服务器端的安装程序,之后在你的网站或项目的根目录下添加pageoffice文件夹(在PageOffice官方网站的“下载中心”中可下载相应的压缩包,解压之后直接将PageOffice实例代
2、码里的pageoffice文件夹拷贝到根目录下就可以了)。第二步:在网站或项目中添加文件夹存放word模板文件,我习惯命名为“doc”,将要打开的文件拷贝到该文件夹下,我要转换的文件为“template.doc”,该文件中有一个书签,名称为“PO_company”。第三步:在网站或项目中创建动态页面FileMaker.aspx。在工具箱中拖动一个FileMakerCtrl控件到页面上(FileMakerCtrl控件位于工具箱最下方)。在FileMaker.aspx.cs后台页面中,添加代码如下://设置服务器页面FileMakerCtrl1.ServerPage="pag
3、eoffice/server.aspx";stringid=Request.QueryString["id"];if(id!=null&&id.Length>0){PageOffice.WordWriter.WordDocumentdoc=newPageOffice.WordWriter.WordDocument();//禁用右击事件doc.DisableWindowRightClick=true;//给数据区域赋值,即把数据填充到模板中相应的位置doc.OpenDataRegion("PO_company").Value="北京卓正志远软件有限公司"+id;//设置保存
4、页面FileMakerCtrl1.SaveFilePage="Savemaker.aspx?id="+id;FileMakerCtrl1.SetWriter(doc);//设置转换完成后执行的JS函数FileMakerCtrl1.JsFunction_OnProgressComplete="OnProgressComplete()";//打开文档FileMakerCtrl1.FillDocument(Server.MapPath("doc/template.doc"),PageOffice.DocumentOpenType.Word);}在前台添加JS函数OnProgre
5、ssComplete()如下:functionOnProgressComplete(){window.parent.myFunc();//调用父页面(Default.aspx)的js函数}第四步:在网站或项目中创建动态页面SaveMaker.aspx,保存转换后的Word文档到本地磁盘上,部分代码如下://定义FileSaver对象PageOffice.FileSaverfs=newPageOffice.FileSaver();stringfileName="maker"+id+fs.FileExtName;//将Word文档保存到本地磁盘上fs.SaveToFile(S
6、erver.MapPath("doc/")+fileName);fs.Close();第五步:在网站或项目中创建动态页面Default.aspx。先在页面中嵌套一个标签:。再在页面中添加一个非服务器端按钮,给其添加一个onclick事件,执行JS函数“ConvertFiles()”。最后在页面中添加一个层,用来作为进度条显示文档的转换进度。部分的Html代码如下:7、Silver;width:200px;visibility:hidden;position:absolute;text-align:center;left:40%;top:50%;margin-top:-32px">正在转换请稍后...
7、Silver;width:200px;visibility:hidden;position:absolute;text-align:center;left:40%;top:50%;margin-top:-32px">正在转换请稍后...
此文档下载收益归作者所有