如何使用flexpaper+swftools大文件分页转换实现在线预览

引言

之前总结了在线预览几种常见解决方案,可以戳这里:

http://www.cnblogs.com/wolf-sun/p/3569960.html

http://www.cnblogs.com/wolf-sun/p/3525437.html

http://www.cnblogs.com/wolf-sun/p/3574278.html

客户突然给了比较大的文档,赫然崩溃,项目中采用的是flexpaper+swftools方式实现的,发现在pdf-》swf的时候,转了100页之后,就会出现问题,很无奈,可能客户上传的word文档有问题,客户给的文档,页面方向有横向的,也有纵向的。没办法只能想办法解决了。

最后想到了将他们一页一页的转,说实话我都疯了,几百页的文档,抽支烟回来才转完,你不疯不行啊。

之后想了用其他几种解决方案,由于客户要求文档不能被下载,被复制,要有保密性,这需求,你想保密,想安全,就别放在网上啊,别人只要想要,一张一张的截图,也能给你的文档扣下来,想当年,考研那会儿,我都干过这事,考题都是从网上一张一张截图搞下来的。现在想想,当时真sb。

单页pdf转swf

这里还是使用这篇文章中的demo:http://www.cnblogs.com/wolf-sun/p/3525437.html

然后修改PSD2SwfHelper类下的方法PDF2SWF和GetPageCount,将私有改为公有:

 1 /// <summary> 2     /// PDF格式转为SWF 3     /// </summary> 4     /// <param name="pdfPath">PDF文件地址</param> 5     /// <param name="swfPath">生成后的SWF文件地址</param> 6     /// <param name="beginpage">转换开始页</param> 7     /// <param name="endpage">转换结束页</param> 8     public static bool PDF2SWF(string pdfPath, string swfPath, int beginpage, int endpage, int photoQuality) 9     {10         //swftool,首先先安装,然后将安装目录下的东西拷贝到tools目录下11         string exe = HttpContext.Current.Server.MapPath("~/Bin/tools/pdf2swf.exe");12         pdfPath = HttpContext.Current.Server.MapPath(pdfPath);13         swfPath = HttpContext.Current.Server.MapPath(swfPath);14         if (!System.IO.File.Exists(exe) || !System.IO.File.Exists(pdfPath) || System.IO.File.Exists(swfPath))15         {16             return false;17         }18         StringBuilder sb = new StringBuilder();19         sb.Append(" \"" + pdfPath + "\"");20         sb.Append(" -o \"" + swfPath + "\"");21         sb.Append(" -s flashversion=9");22         if (endpage > GetPageCount(pdfPath)) endpage = GetPageCount(pdfPath);23         sb.Append(" -p " + "\"" + beginpage + "" + "-" + endpage + "\"");24         sb.Append(" -j " + photoQuality);25         string Command = sb.ToString();26         System.Diagnostics.Process p = new System.Diagnostics.Process();27         p.StartInfo.FileName = exe;28         p.StartInfo.Arguments = Command;29         p.StartInfo.WorkingDirectory = HttpContext.Current.Server.MapPath("~/Bin/");30         p.StartInfo.UseShellExecute = false;31         p.StartInfo.RedirectStandardError = true;32         p.StartInfo.CreateNoWindow = false;33         p.Start();34         p.BeginErrorReadLine();35         p.WaitForExit();36         p.Close();37         p.Dispose();38         return true;39     }

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索文档
, flexpaper
, append
, swftools
, itext pdf 分页
, system
, flexpaper 页数控制
, pdf2swf
, httpcontext
, 分页pdf转swf
, 在线阅读.netasppdf2swf
, 文件在线预览
, cnblogs
current
swftools flexpaper、flexpaper 分页、flexpaper分页加载、flexpaper 在线预览、flexpaper,以便于您获取更多的相关知识。

时间: 2024-10-02 22:51:07

如何使用flexpaper+swftools大文件分页转换实现在线预览的相关文章

html-java在线预览转,文件无法正常转换

问题描述 java在线预览转,文件无法正常转换 最近在做在线预览,发现一个奇怪的问题:在转换.txt文档的时候,如果内容是html的源码的话,转换的时候,程序会把文档当成一个html的文件来转换,文档就不能正常转换了.但是如果内容不是thml源码的话,又可以正确转换.这是什么情况呢? 解决方案 我觉得你这问题给的信息太少了,贴点代码出来,大家好帮你看看

FlexPaper在线预览在转换swf之后flex播放不出来

问题描述 FlexPaper在线预览在转换swf之后flex播放不出来 在 使用官方的Paper.swf时候没有问题,但是在使用自己转换的swf时候,flex就显示不出来了.如下图 解决方案 这个怎么解决呢....楼主,我现在和你一样的问题,你咋搞的,

FlexPaper+SWFTool+操作类=在线预览PDF

由于客户有在线预览PDF格式的需求,在网上找了一下解决方案,觉得FlexPaper用起来还是挺方便的,flexpaper是将pdf转换为swf格式的文件预览的,所以flexpaper一般和swftool配合使用,在程序运行时将pdf文件转换为swf格式的文件. 如果flexpaper不满足你的要求,也可以对其进行二次开发,这里推荐两篇文章,希望对您有所帮助: http://www.cnblogs.com/xcong/archive/2013/06/20/3142155.html http://w

Java Web文件在线预览功能求解

问题描述 最近在做档案这样一个模块,,其他基本功能已经实现,当然了就是一些简单的增删改查和工作流,剩下最后的两个功能,分别是文档在线预览和文档加水印的功能,文档包括图片,txt,html,office,视频这些,在网上找了下解决方案,openoffice+jodconverter+swfTools,把文档转换为pdf,在转换为swf,提供给flexPaper在线预览,office2003可以实现转换,但是存在着bug,office2007无法预览,而且文档中有图片则会出现无法加载该文档的错误.自

asp.net文件图片上传带预览效果

asp教程.net文件图片上传带预览效果 图片预览主要包括两个部分:从file表单控件获取图像数据,根据数据显示预览图像. 程序的file和img属性就是用来保存file控件和显示预览图像的容器的,而img还必须是img元素. 程序有以下几种预览方式: simple模式:直接从file的value获取图片路径来显示预览,适用于ie6: filter模式:通过selection获取file的图片路径,再用滤镜来显示预览,适用于ie7/8: domfile模式:调用file的getAsDataURL

想在项目中实现上传的文件在线预览功能,请问用什么技术好

问题描述 目前是用的FlexPaper结合pdf2swf和openoffice实现的,感觉比较繁琐,需要在服务器上先安装openoffice程序,word转换为pdf时占用内存,利用FlexPaper预览时打印和复制参数无效,貌似需要二次开发才行,不知道还有没有其它的技术来实现...我上传的文件格式比较多,包含:doc/docx/txt/ppt/xls/xlsx/html/htm/pdf/jpg/gif/png/jpeg等格式.... 解决方案 解决方案二:批量生成缩略图?然后预览的是缩略图解决

找不到chrome文件-webstorm 无法使用 chrome浏览器预览

问题描述 webstorm 无法使用 chrome浏览器预览 本人初学html,用webstorm编辑了个html文档后,在webstorm右上角选择用chorme预览时提示错误说"找不到chrome文件",但是我确是是已经安装了最新版的chrme浏览器,而选择用IE浏览器是能打开的.若直接把在IE预览时的链接地址复制到chrome中也能打开. 这是什么回事,求各路大哥指点 解决方案 http://www.bkjia.com/HTML5/442248.html 把chrome设置为默认

jsp中点击图片弹出文件上传界面及预览功能的实现_JSP编程

花了两天时间琢磨一下图片预览的功能 任务需求如下: 1:jsp页面中有一个图片(pic_1) 2:点击图片弹出类似于资源管理器的界面 3:选择完某一个图片之后在pic_1处预览 我在IE8上试验下面这段代码,可以实现上述功能,没有在别的浏览器中测试,如果各位朋友知道多种浏览器的支持方法,请赐教,共同学习,谢谢. 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http:

界面大变脸,Dreammail 4.5预览版初体验

熟悉http://www.aliyun.com/zixun/aggregation/12490.html">邮件客户端的朋友,大多听说过Dreammail(以下简称DM)的大名.凭借着良好的操作界面和 众多的实用功能,它已经成为越来越多朋友装机的 首选. 不过,自从进入07年以后,这款软件的更新频率却忽然间慢了下来.以至于很多朋友都在质疑,是不是作者已经放弃了这款软件.不过, 前段时间,笔者却偶然得到了一份Dreammail 4.5的预览版本. 经过试用,我们发现,这款软件非但没有像大家质