[Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!
2014-03-08 13:57
1036 查看
转载于:/content/3730178.html
Office2HtmlHelper
Office2Html.aspx
Office2PDFHelper
Office2PDF
Office2PDF.aspx
测试结果:
此方案office转pdf文件的过程的要求与方案二要求相同。
pdf转换完成后,就可以将pdf转换为swf,使用flexpaper+swftools实现在线浏览了,可参考我之前的一篇文章:
FlexPaper+SWFTool+操作类=在线预览PDF
office直接转换为swf,这里使用flashpaper来实现:
FlashPaper是一个虚拟打印机,可将word文件直接转化成swf格式文件(.doc.xls .txt .pdf等文件都可以正常生成SWF格式)。
这里只贴出核心代码:
鉴于测试时,flashpaper在将office文档转换为swf的时候,在使用flexpaper的浏览时,出现转换的内容为空,猜测:flexpaper能打开的swf文件与flashpaper转的swf文件不兼容。最后使用flashpaper将office文档转换为pdf,然后走方案三,pdf转swf的步骤。另外本地测试时,没问题。将项目部署在IIS上,不能浏览,出现卡死的情况,调试发现,文件太大,在office还没完全转换为pdf的情况下,swftool工具就去寻找pdf文件,出现错误。
IIS上,无法浏览,查询网上解决方案,和权限这块有关,按照步骤设置了,未果,有点遗憾。
必要条件:本地需安装adobe reader类似软件。
参考文章:
http://www.cnblogs.com/expectszc/archive/2012/04/04/2432149.html
http://www.cnblogs.com/lexlin/articles/2478027.html
/article/4785478.html
http://www.cnblogs.com/expectszc/archive/2012/04/04/2432149.html
引言
之前项目需要,查找了office文档在线预览的解决方案,顺便记录一下,方便以后查询。方案一
直接在浏览器中打开Office文档在页面上的链接。会弹出如下窗口:Office2HtmlHelper
Office2Html.aspx
Office2PDFHelper
Office2PDF
Office2PDF.aspx
测试结果:
此方案office转pdf文件的过程的要求与方案二要求相同。
pdf转换完成后,就可以将pdf转换为swf,使用flexpaper+swftools实现在线浏览了,可参考我之前的一篇文章:
FlexPaper+SWFTool+操作类=在线预览PDF
方案四
office文档直接转换为swf,使用flexpaper+swftool实现在先浏览。office直接转换为swf,这里使用flashpaper来实现:
FlashPaper是一个虚拟打印机,可将word文件直接转化成swf格式文件(.doc.xls .txt .pdf等文件都可以正常生成SWF格式)。
这里只贴出核心代码:
1 using System; 2 using System.Collections.Generic; 3 using System.Diagnostics; 4 using System.Linq; 5 using System.Web; 6 using System.Web.UI; 7 using System.Web.UI.WebControls; 8 9 namespace Wolfy.OfficePreview 10 { 11 public partial class Office2Swf : System.Web.UI.Page 12 { 13 protected void Page_Load(object sender, EventArgs e) 14 { 15 16 } 17 protected void btnWord_Click(object sender, EventArgs e) 18 { 19 Button btn = sender as Button; 20 switch (btn.CommandArgument) 21 { 22 case "docx": 23 ConvertOffice2Swf(MapPath("/Doc/分析某网站的SEO策略(外链篇).doc"), MapPath("/SWF/分析某网站的SEO策略(外链篇).swf")); 24 break; 25 case "xlsx": 26 Office2PDFHelper.XLSConvertToPDF(MapPath("/Excel/1994-2013北京市历年最低工资标准.xlsx"), MapPath("/SWF/1994-2013北京市历年最低工资标准.swf")); 27 break; 28 case "ppt": 29 Office2PDFHelper.PPTConvertToPDF(MapPath("/PPT/23种设计模式详解.ppt"), MapPath("/SWF/23种设计模式详解.swf")); 30 break; 31 default: 32 break; 33 } 34 } 35 /// <summary> 36 /// office 转swf 37 /// </summary> 38 /// <param name="officePath">要转换的office文档路径</param> 39 /// <param name="swfPath">转换后swf的路径</param> 40 private void ConvertOffice2Swf(string officePath, string swfPath) 41 { 42 Process process = new Process(); //创建进程对象 43 ProcessStartInfo startInfo = new ProcessStartInfo(); 44 string paperroot = @"C:\Program Files\Macromedia\FlashPaper 2\FlashPrinter.exe";//这里是FlashPrinter的路径 45 string docFile = officePath; 46 string swfFile = swfPath; 47 startInfo.FileName = paperroot; 48 startInfo.Arguments = docFile + " -o " + swfFile; 49 startInfo.UseShellExecute = false; //不使用系统外壳程序启动 50 startInfo.RedirectStandardInput = false; //不重定向输入 51 startInfo.RedirectStandardOutput = false; //重定向输出 52 startInfo.CreateNoWindow = true; //不创建窗口 53 process.StartInfo = startInfo; 54 process.Start(); 55 if (process != null) 56 process.Close(); 57 58 } 59 } 60 }
鉴于测试时,flashpaper在将office文档转换为swf的时候,在使用flexpaper的浏览时,出现转换的内容为空,猜测:flexpaper能打开的swf文件与flashpaper转的swf文件不兼容。最后使用flashpaper将office文档转换为pdf,然后走方案三,pdf转swf的步骤。另外本地测试时,没问题。将项目部署在IIS上,不能浏览,出现卡死的情况,调试发现,文件太大,在office还没完全转换为pdf的情况下,swftool工具就去寻找pdf文件,出现错误。
IIS上,无法浏览,查询网上解决方案,和权限这块有关,按照步骤设置了,未果,有点遗憾。
方案五
使用点聚公司的weboffice控件,测试后发现兼容性较差,放弃。有兴趣的可以研究一下。方案六
office转pdf后,直接浏览器打开,此方案鉴于目前主流浏览器都集成adobe reader功能,可实现直接打开PDF文件。将pdf文件链接可直接打开。必要条件:本地需安装adobe reader类似软件。
总结
鉴于项目情况选择一个适合的方案,其中有方案只是曲线救国,但是同样能达到要求。如果您觉得对你有所帮助,不妨推荐一下,让更多的人都能看到,谢谢你能看到文章最后。参考文章:
http://www.cnblogs.com/expectszc/archive/2012/04/04/2432149.html
http://www.cnblogs.com/lexlin/articles/2478027.html
/article/4785478.html
http://www.cnblogs.com/expectszc/archive/2012/04/04/2432149.html
相关文章推荐
- [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!(续)
- [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你
- [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!
- [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你
- [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!
- [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!
- [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!
- [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!
- [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!
- [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!(续)
- [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!
- [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!(续)
- [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!(续)
- [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!
- 常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!
- 常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!
- 常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!
- 转载: Asp.net常见word,excel,ppt,pdf在线预览方案
- [Asp.net]常见word,excel,ppt,pdf在线预览方案(转)
- asp.net实现word、excel、ppt、pdf在线预览