PHP+FlashPaper文库系统方案简析

博客原文:http://www.joychao.cc/516.html

之前在兄弟连的第二个项目,做了一个类百度文库的一个文库系统,效果还行,虽然不是很完美,但是基本的一个功能实现了用户上传word,ppt,excel等常用文件的转换。今天来跟大家分享一下实现原理吧:

首先呢,这个系统实现方法有多种,当时也是都尝试了一遍,有的光软件就100多M,所以最终选择了FlashPaper这个方案。
配置要求:
1、服务器必须是windows系统
因为本插件必须能将doc、xls、docx、ppt、txt、pdf等等文档打开才可以,因为这些文档只支持windows系统,所有必须服务器是 windows系统,而且必须安装office和pdf阅读器。
2、php必须支持exe函数调用(因为首先要将文档打开然后打印成flash格式)
3、服务器必须支持虚拟打印功能
4、服务内存需要足够大,因为打印的时候要占用原有的内存(建议最低为2-4G);
满足上述服务器配置条件,才能支持在线文档插件。

整体思路:
一) 客户端上传上来文件。
二) 服务端调用flashpaper
三) 服务端打印出.swf文件。
四) 利用FlashPaper调用.swf文档并显示在页面上。



第一步:下载安装FlexPaper
破解版下载:http://files.cnblogs.com/wuhenke/flashpaper.rarhttp://vdisk.weibo.com/s/42Xlq
解压后得到如下结构:


接下来要做的就是打开初始化目录,双击“初始化.bat”,过程中如果出错则整个项目就失败了。


第二步:使用FlashPaper
项目安排:


这里我建立一个项目名为docDemo的目录,下面有docs,swfs,tools。docs存放用户上传的文档,swfs存放转换后的文件, tools存放FlashPaper.

Flash Paper支持Office文档(.doc,.xls,.ppt)直接转换为PDF或SWF,速度很快,效果较好。可惜,Flash Paper V2.2后没有再更新了。安装Flash Paper后,可以直接使用命令调用FlashPrinter.exe,实现批量转换。
核心其实就是这个转换,命令格式: C:\FlashPaper2.2\FlashPrinter.exe C:\PHP基础.ppt -o C: PHP基础 .pdf
我这里写了一个函数来实现批量转换:
/**
* 转换成SWF
*/
function convert($doc){
$docFile="C:\wamp\www\docDemo\docs\\{$doc}"; //需要转换的文档
$newFile="C:\wamp\www\docDemo\swfs\\{$doc}.swf"; //转换后的文件名
$command = "\"C:\wamp\www/docDemo/tools/FlashPrinter.exe\" {$docFile} -o {$newFile}";
if(!file_exists($newFile))//swf文件已经存在就不用转换了
exec($command); //执行转换
return $newFile;
}


//执行转换
$path=convert($doc);//返回新文件路径
file_exists($path) or exit('文件转换失败!');

注意:以上红色部分请一定要保证填写正确,不然失败哦!

好了转换好了就使用最传统的方法把转换后的swf文件嵌入到网页就OK了。
我做了一个示例,下载地址: http://vdisk.weibo.com/s/43jQ8
这个实例只是实现了浏览,至于上传文档这些大家就自己做了。
XP下成功,win7上不成功!


这里补充一下关于《微分享文库》说明文档不全的问题:
之前压缩包里的说明漏掉了两点需要修改路径的地方,今天重新补上全文:
引用
db 为数据库文件 使用时请直接把db/wshare放在mysql安装目录的data目录下
wshare 为程序主文件


安装方法(win7好像用不了):
1,首先打开 wshare/FlashPaper/初始化 目录下的:初始化.bat
2,修改 wshare/FlashPaper/c.bat 内容。修改相应路径
3, 修改 home/controls/upload.class.php中80~83行中相应路径。
4,修改 admin/controls/docs.class.php中126~128行中相应路径。

4,把db/wshare放在mysql安装目录的data目录下
5,完毕。

说明:
wshare/FlashPaper 为flash转换文件目录
wshare/Documents 为用户上传文档目录,包含swf和old,swf为转换后的swf文件,old为用户上传的原文件


后台: http://xxxx.com/admin.php
username:admin
password:123456

----------------- LAMP兄弟连 安正超
源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经
MTCEO文库系统免费开源,采用php mysql,由thinkphp搭建底层,百度文库模板风格为基础风格。   MTCEO文库系统四大优势: 1,免费开源,10万站长的选择 架构:基于MySQL PHP的技术架构体系; 框架:基于开源的ThinkPHP技术架构,实现MVC、缓存等框架设计; 移植:支持当前主流的虚拟主机的Windows、IIS服务器移植应用; 开源:支持代码全部开源、二次开发以及模板定制业务需求; 2,一键式安装,快速部署建站 部署:支持一键式安装、傻瓜式5分钟即完成部署一个新的站点; 分词:支持自动完成标题分词、标签化,自定义式管理分类与标签关系; SEO:支持不同的SEO规则、SEO优化设置需求,支持多样化的Rewrite设计、URL网址规则; 3,无需转换软件 无论你是虚拟空间还是独立服务器,无需转换文档,只需要在官方的开放平台拥有appkey 就可以进行文档预览并生成文档的封面了! 4,多模板、模块化功能设计,站长可以定制二次开发新功能 模板:默认多样化的模板风格、MVC模板设计,站长可以选择以及自定义适合自已的模板; 模块:模块化设计,站长可以根据实际需求启用不同的业务需求的功能模块; 定制:OOP的设计结构让站长可以根据自己的业务需求进行二次开发所需的功能;   程序功能及特点: 1、具有文库基本功能 2、用户可以互为粉丝 3、可以对文档进行评分、收藏和推荐 4、完善了网站积分机制 5、完美整合ucenter,可与discuz论坛互通头像、积分和用户 6、评论、评分更加完善,表情等可后台自定义 7、预览无压力,借用官方开放平台,不占用个人空间! 8、文库模板自由替换机制,详情可见教程区模板相关教程 9、后台在线升级、数据库备份与还原、缓存更新 10、腾讯、新浪微博和淘宝一键登录支持! 11、标签机制,自由更改模板内容 12、发布文档时,文档分类采用竖排列结构,更清晰 13、修复了原有的虚拟空间与独立服务器的双选择模式 14、修复了10.0评分遮盖在星星评分上面的问题 15、下载安装后为非伪静态模式,减少了配置伪静态的时间!可后台开启伪静态!      相关阅读 同类推荐:站长常用源码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值