• 仿百度文库解决方案


    接公司需求,要实现类似百度文库的这么一个东西

    关键的技术就在于文档转换为swf,及展示

    网上搜了好多参考,总结出几种可实现方案:

    1.Print2flash商业软件。功能非常强大,可制定性强,稳定。可直接把office、PDF等文档直接转换成带浏览框架的swf文件。唯一缺点是,收费,搜不到破解方法,有序列号,但序列号版本功能有限制,不适合通过代码实现文档转换

    2.FlashPaper。同上,可以直接把office、PDF等文档直接转换成带浏览框架的swf文件。只是无法制定皮肤、水印等东西,速度慢,不稳定。

    3.最后决定使用的方案是:office文档转换为PDF,再通过pdf转为swf,使用flex制作一个浏览框架swf文件。

    所需环境为:

    1.adobe acrobat 9。转换为pdf文件

    2.office2007。将office文件转为pdf时,除了acrobat,当然office功能不可少。

    3.swftools。开源工具,可将pdf文件转为SWF文件

    4.vs2010开发环境,通过.net开发一个命令小工具,调用acrobat库的功能,实现命令行方式转换office,代码其实也就十来行就实现了。

    实现步骤:

    1.安装adobe acrobat 9、office2007、swftools等软件

    2.使用vs2010开发命令行工具,调用acrobat的PDFMakerAPI.dll来实现转换。

    3.PHP页面上传文档,在后台执行转换。在此遇到一个问题,所开发的工具如果在windows的cmd窗口中调用,可正确转换,但通过php的exec调用命令来转换,无法生成目标pdf。经分析,是PHP的权限不足。修改apache服务启动的用户,使其拥有较高的权限,转换成功。

    4.swftools转换pdf为swf,注意要点,需要加-T 9 版本参数,否则生成的SWF格式将为AVM1Movie格式,在flex中通过swfloader无法控制

    5.使用flex开发一个加载框架swf,该swf可自己制定外观、水印等,关键技术是通过swfloader加载内容swf,然后gotoAndStop()每一帧,将每一帧的内容移到一个容器中,这个容器就是一个页面。也就是每一帧,生成一页,然后添加到一个VGroup中,再放到一个scroller中实现滚动。

  • 相关阅读:
    (OK) CORE nodes access Internet—虚拟节点访问互联网—commands
    Open VSwitch—离开VMware的SDN之父Martin Casado是神马大神
    (OK-half) Fedora23——Docker——CORE—testing
    【codeforces 752B】Santa Claus and Keyboard Check
    【codeforces 752C】Santa Claus and Robot
    【codeforces 752E】Santa Claus and Tangerines
    【codeforces 548E】Mike and Foam
    【codeforces 752D】Santa Claus and a Palindrome
    【codeforces 752F】Santa Clauses and a Soccer Championship
    【codeforces 546A】Soldier and Bananas
  • 原文地址:https://www.cnblogs.com/keanuyaoo/p/3341620.html
Copyright © 2020-2023  润新知