很多时候,我们都需要在网络上针对网页选中的内容在线生成一个Word文档并下载,但是实际上却很难实现,因为使用网页制作程序本身是很难完成的。
因此,很多人选择了第三方控件。只有借助第三方控件方可实现。然而,使用第三方控件,很多控件都需要安装,如果没有服务器的权限,根本就安装不了,导致无法正常使用控件。
在这里,为大家介绍,不需要在服务器上安装任何插件控件,直接就能使用的生成Word文档并下载的,该控件叫做:aspose.words。请注意哦,记得想办法弄到一个破解版的。这样你就会下载到一个名为“Aspose.Words.dll”的动态链接库
下面是使用aspose.words在线生成文档并下载的范例。
一、添加引用
添加Aspose.Words.dll的引用,将其引入到项目中。具体方法为:“网站”→“添加引用”,弹出对话框,选择“浏览”选项卡并找到动态链接库的名称即可。
二、使用范例
首先在使用Aspose.Words.dll的页面头部,加入如下代码的命名空间的导入。
using Aspose.Words;
最后,就是范例代码了。如下:
string FileName = "生成的新文档的名称.doc";//要生成的Word文档的名称
string Path = Server.MapPath("WordFiles/MyWord.doc");//模板文件的路径
Document doc = new Document(Path); //载入模板
DocumentBuilder builder = new DocumentBuilder(doc);
builder.MoveToBookmark("Image");//定位到文档中的书签Image,并在其下方插入图片
builder.Write("Image1 from local file: ");
builder.InsertImage(Server.MapPath("")+"/Img/gif/forWait.gif");
builder.Writeln();//新增文字
builder.Write("Image2 from local file: ");
builder.InsertImage(Server.MapPath("") + "/Img/gif/forWait1.gif");
builder.Writeln();
//下面的代码能够实现将网页内容或数据库字段内容连同图片直接导入到WORD文档中,相当好。
string html = @"<div>电子邮件的传输过程如下图所示,从图中可以看出邮件服务器A是发件人计算机的( )。<br /><img src='MyEditor/upload/day_150419/20150419034427335.jpg' alt='' /><br /> A. SMTP服务器<br /> B. POP3服务器<br /> C. IMAP服务器<br /> D. FTP服务器</div>";
html = html.Replace("MyEditor", Server.MapPath("") + "/MyEditor");//替换图片路径为绝对路径,否则显示不出来。
builder.InsertHtml(html);
builder.Document.Save(FileName, SaveFormat.Doc, SaveType.OpenInWord, Response);//生成的新文档提供下载保存