ASP.NET中Word文件转换为PDF文件并在网页里显示PDF文件

在开发项目时,可能有时需要将项目中上传的文件进行转换,如将Word文件转换为PDF文件。要实现这一功能,可能有些人根
本就毫无头绪或者是实现方法很复杂、不容易理解而且效率低,但若是通过PageOfficeCtrl控件,则很容易就能实现这一转换
,并且还可以利用PDFCtrl控件在网页里显示转换生成的PDF文件。
    下面我就来和大家分享一下,通过这两个控件实现文档转换并显示的一个示例。
    第一步:请先安装PageOffice的服务器端的安装程序,之后在你的网站中根目录下添加pageoffice文件夹  (在
www.zhuozhengsoft.com网站的“下载中心”中可下载相应的压缩包,解压之后直接将PageOffice实例代码里的pageoffice文
件夹拷贝到根目录下就可以了)。
    第二步:在网站中添加文件夹存放word模板文件和转后的PDF文件,我习惯命名为“doc”,将要转换的文
件“template.doc”拷贝到该文件夹下。
    第三步:在网站中创建web页面WordToPDF.aspx。在工具箱中拖动一个PageOfficeCtrl控件到前台页面上
(PageOfficeCtrl控件位于工具箱最下方)。然后在后台添加代码设置PageOffice的服务器页面、保存页面、打开Word文件和
添加自定义按钮,部分代码如下:
    //设置服务器页面
    PageOfficeCtrl1.ServerPage = "pageoffice/server.aspx";
    //设置保存页
    PageOfficeCtrl1.SaveFilePage = "SaveFile.aspx";
    //添加自定义按钮
    PageOfficeCtrl1.AddCustomToolButton("保存", "Save()", 1);
    PageOfficeCtrl1.AddCustomToolButton("另存为PDF文件", "SaveAsPDF()", 1);
    string fileName = "template.doc";
    //定义将要转换的PDF文件的名称
    pdfName = fileName.Substring(0, fileName.Length - 4) + ".pdf";
    //打开Word文件
    PageOfficeCtrl1.WebOpen(Server.MapPath("doc/") +fileNamen,  PageOffice.OpenModeType.docNormalEdit, "张佚名
");
    之后在前台页面添加执行自定义按钮“保存”、“另存为PDF文件”时执行的的JS函数:        
Save()、SaveAsPDF(),代码如下:
    //保存
    function Save() {
    document.getElementByIdx_x_x_x("PageOfficeCtrl1").WebSave();}
    //另存为PDF文件
    function SaveAsPDF() {
    document.getElementByIdx_x_x_x("PageOfficeCtrl1").WebSaveAsPDF();
    //转换为PDF文件后,在OpenPDF.aspx中打开转换后的PDF文件
    window.open("OpenPDF.aspx?fileName=");}
    第四步:在网站中创建动态页面SaveFile.aspx保存Word文件,在后台添加代码如下:
    //定义FileSaver对象
    PageOffice.FileSaver fs = new PageOffice.FileSaver();
    //保存Word文件
    fs.SaveToFile(Server.MapPath("doc/") + fs.FileName);
    //关闭FileSaver对象
    fs.Close();
    第五步:显示转换得到的PDF文档。在网站中创建web页面OpenPDF.aspx。在前台页面中添加层标签
,从工具
箱中拖动一个PDFCtrl控件到该层中(PDFCtrl控件位于工具箱下方),之后要设置该层的高和宽,否则打开的PDF文档将无法
正常显示,部分HTML代码如下:
  

  
  
  

    后,在OpenPDF.aspx.cs页面中添加代码,设置PageOffice服务器页面、添加自定义按钮和打开PDF文件:
部分代码如下
    //设置服务器页面
    PDFCtrl1.ServerPage = "pageoffice/server.aspx";
    //设置PDF文件的主题
    PDFCtrl1.Theme = PageOffice.ThemeType.CustomStyle;
// 按键说明:光标键、Home、End、PageUp、PageDown可用来移动或翻页;数字键盘+、-用来放大小数字盘/、*用来旋转页面

    //AddCustomToolButton方法中的三个参数分别为:按钮名称、按钮执行的JS函数、按钮图标的索引
    PDFCtrl1.AddCustomToolButton("打印", "Print()", 6);
    PDFCtrl1.AddCustomToolButton("-", "", 0);
    PDFCtrl1.AddCustomToolButton("实际大小", "SetPageReal()", 16);
    ...
    ...
    PDFCtrl1.AllowCopy = false;//是否允许拷贝
    string fileName = Request.QueryString["fileName"];
    //打开PDF文件
    PDFCtrl1.WebOpen("doc/" + fileName);
    最后在前台页面添加相应的JS函数,如下:
    //打印
    function Print() {
    document.getElementByIdx_x_x_x("PDFCtrl1").ShowDialog(4); }
    //设置PDF文件的实际大小
    function SetPageReal() {
    document.getElementByIdx_x_x_x("PDFCtrl1").SetPageFit(1);}
    ...
    ...
    如此,就能实现文件的转换以及显示了。
    方案总结:
    利用PageOffice开发平台中的组件PageOfficeCtrl和PDFCtrl,可简单轻松的实现文件从Word到PDF格式的转换并显示转换
得到的PDF文档,极大地提高了程序员的开发效率。
可在卓正网站( http://www.zhuozhengsoft.com)的下载中心下载该示例的完整代码。
卓正软件的田女士为您提供--15810217283 QQ:947813015

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28798262/viewspace-758283/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/28798262/viewspace-758283/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值