1:工具准备
swftools.exe 下载

http://www.swftools.org/download.html

安装至D盘 SWFTools提供了一系列将各种文件转成swf的工具:

font2swf.exe

gif2swf.exe

jpeg2swf.exe

pdf2swf.exe

png2swf.exe

wav2swf.exe

这里我们只使用

pdf2swf.exe

flexpaper下载 http://code.google.com/p/flexpaper/  这里我们使用已经编译好的FlexPaper的flash版本

2:示例语言,这里我使用的两种开发环境做示例

php示例    由pdf生成swf文件

  • <?php
  • /*
  • * Created on 2010-11-17
  • *
  • * To change the template for this generated file go to
  • * Window - Preferences - PHPeclipse - PHP - Code Templates
  • */
  • //获取文件所在目录
  • $dir=dirname(__FILE__) ;
  • //删除测试文件
  • @unlink( $dir."\\test.swf" );
  • //使用pdf2swf转换命令
  • $command= "D:/SWFTools/pdf2swf.exe  -t \"".$dir."\\test.pdf\" -o  \"".$dir."\\test.swf\" -s flashversion=9 ";
  • //创建shell对象
  • $WshShell   = new COM("WScript.Shell");
  • //执行cmd命令
  • $oExec      = $WshShell->Run("cmd /C ". $command, 0, true);
  • ?>

java示例<%

  • /*
  • * Created on 2010-11-17
  • */
  • //获取文件所在目录
  • String path=request.getRealPath("/");
  • //使用pdf2swf转换命令
  • String command= "D:/SWFTools/pdf2swf.exe  -t \""+path+"\\test.pdf\" -o  \""+path+"\\test.swf\" -s flashversion=9 ";
  • //执行cmd命令
  • Runtime.getRuntime().exec("cmd /c "+command);
  • %>
  • 以上是php,java将pdf转换成swf方式,那显示呢,这样我们会使用到flexpaper,以下是flexpaper的使用
       使用flexpaper展现swf
    • <script type="text/javascript" src="js/swfobject/swfobject.js"></script>
    • <script type="text/javascript">
    • var swfVersionStr = "10.0.0";
    • var xiSwfUrlStr = "playerProductInstall.swf";
    • var flashvars = {
    • SwfFile : escape("test.swf"),
    • Scale : 0.6,
    • ZoomTransition : "easeOut",
    • ZoomTime : 0.5,
    • ZoomInterval : 0.1,
    • FitPageOnLoad : false,
    • FitWidthOnLoad : true,
    • PrintEnabled : true,
    • FullScreenAsMaxWindow : false,
    • ProgressiveLoading : true,
    • PrintToolsVisible : true,
    • ViewModeToolsVisible : true,
    • ZoomToolsVisible : true,
    • FullScreenVisible : true,
    • NavToolsVisible : true,
    • CursorToolsVisible : true,
    • SearchToolsVisible : true,
    • localeChain: "zh_CN"
    • };
    • var params = {
    • }
    • params.quality = "high";
    • params.bgcolor = "#ffffff";
    • params.allowscriptaccess = "sameDomain";
    • params.allowfullscreen = "true";
    • var attributes = {};
    • attributes.id = "FlexPaperViewer";
    • attributes.name = "FlexPaperViewer";
    • swfobject.embedSWF(
    • "FlexPaperViewer.swf", "flashContent",
    • "650", "500",
    • swfVersionStr, xiSwfUrlStr,
    • flashvars, params, attributes);
    • swfobject.createCSS("#flashContent", "display:block;text-align:left;");
    • </script>
    • <body>
    • <div style="position:absolute;left:10px;top:10px;">
    • <div id="flashContent">
    • </div>
    • </div>
    • </body>
    • 通过上述方式我们可以将pdf转换成相应的swf文件,并通过flexpaper显示,防止用户下载,或copy。

pdf2swf的详细参数说明,上网百度或者Google都能查到,但是注意的最好指定flashversion 为9,防止出现一些意外的错误。 pdf2swf 中并不是所有的pdf都能转换,加密的pdf pdf2swf转换不了

flexpaper 的参数详细说明请参考 http://code.google.com/p/flexpaper/wiki/Parameters

flexpaper 常用的API  http://code.google.com/p/flexpaper/wiki/API

如果出现乱码问题可能是字符集,网上有很多的相关解决方法可以查询【我没有碰到字符集堵的问题】。

还有pdf中含有图片可能转换成swf后图片不大清晰。

word,wps,txt等文档也可以采用该方式转换,但工具不一定为swftools

上传的flexpaper附件中已经包含flexpaper中相关文件不用重新下载,只要下载swftools,并安装。

flexpaper附件中包含了pdf2swf.jsp与pdf2swf.php

两个文件及flexpaper相关的组件可以在java或php环境中运行。

pdf2swf+flexpaper解决pdf在线阅读(类百度文库)的更多相关文章

  1. 类似百度文库pdf2swf+flexpaper解决pdf在线阅读的效果

    1:工具准备swftools.exe 下载http://www.swftools.org/download.html 安装至D盘SWFTools提供了一系列将各种文件转成swf的工具:font2swf ...

  2. PDF在线阅读 FlexPaper 惰性加载 ;

    关于PDF在线阅读问题,比较普遍的做法是转换成swf文件来浏览:由于项目需要,就用 flexpaper 来实现了下,功能比较简单:但是文件的惰性加载确实让笔者挠头了一把! 下面是笔者的方法: 采用流的 ...

  3. web版pdf在线阅读器

    近期论坛里有人提到了,在线pdf阅读器怎么做.我百度了一下,发现非常多人都非常懒.程序猿都非常懒吗? 答案是否定的. 为什么都不愿意去搜索一下呢.网上非常多答案的.我这里就列举一例.大家共勉. 看代码 ...

  4. Docker入门实战_正版电子书在线阅读_百度阅读

    Docker入门实战_正版电子书在线阅读_百度阅读 Docker入门实战

  5. Silverlight类百度文库在线文档阅读器

    百度文库阅读器是基于Flash的,用Silverlight其实也可以做. 我实现的在线阅读器可以应用于内网文档发布,在线阅览审批等.没有过多的堆积功能,专注于核心功能.主要有以下特性: 1. 基于XP ...

  6. Silverlight类百度文库在线文档阅读器(转)

    百度文库阅读器是基于Flash的,用Silverlight其实也可以做. 我实现的在线阅读器可以应用于内网文档发布,在线阅览审批等.没有过多的堆积功能,专注于核心功能.主要有以下特性: 1. 基于XP ...

  7. JAVA实现word doc docx pdf excel的在线浏览 - 仿百度文库 源码

    我们具体实现思路是这样的 首先下载并安装openoffice和swftools openoffice下载地址:http://www.openoffice.org/download/index.html ...

  8. PDF/WORD/EXCEL/PPT 文档在线阅读

    查资料看了2种解决方法: 1.通过办公软件dll转换,用flans去看 2.通过Aspose转换成pdf格式,在用js前台读pdf(我用的pdf.js) 今天我解决的就是WORD/EXCEL/PPT ...

  9. 在线阅读PDF文件js插件——pdf.js

    最近接到一个需求大致是这样的,要求在移动端和pc端能够在线阅读pdf文件,类似百度文库的功能. 首先想到的就是插件,github(全球最大的男性交友网站- -恩)上一大堆啊,首先找到一个PDFobje ...

随机推荐

  1. 学习 《UNIX网络编程》

    学习本书之前,为了了解C语言,先通读了<C程序设计语言>.但对C语言的理解.熟悉可能还是不足,所以在学习本书的过程中,遇到看不懂的C代码,还要去查询.思考. 本书一开始,我就遇到了问题,运 ...

  2. General Decimal Arithmetic 浮点算法

    General Decimal Arithmetic http://speleotrove.com/decimal/ General Decimal Arithmetic [ FAQ | Decima ...

  3. xx云网络实施方案案例

    由于xx云在我公司进行试用,对接我方存储,于是乎就负责网络实施方案,下面是具体方案介绍 ip分配 具体网络拓扑如下: 下面是两台交换机配置 IPMI交换机配置如下: [Quidway]di cu !S ...

  4. 《Python数据分析》笔记2——统计学与线性代数

    统计学与线性代数 用Numpy进行简单的描述性统计计算 import numpy as np from scipy.stats import scoreatpercentile data=np.loa ...

  5. Latex技巧:在图表序号中加入章节号(实现诸如“图1.1.2”这样的图表序号)

    平时看书经常看到"图1.2"这样的编号,含义是第1章的第2幅插图:或者"图1.1.2",含义是第1章第1节的第2幅插图.而在LaTeX中如果直接插图的话只会显示 ...

  6. 隐马尔可夫模型(hidden Markov model,HMM)

    定义: 隐马尔科夫模型是关于时序的概率模型,描述由一个隐藏的马尔可夫链随机生成不可观测的状态随机序列,再由各个状态生成一个观测而产生观测随机序列的过程. 隐马尔科夫模型由初始概率分布.状态转移概率分布 ...

  7. MongoDB学习笔记—常用命令

    这里记录一下MongoDB常用的命令 数据库相关 创建数据库 use DATABASE_NAME 如果数据库不存在,则创建数据库,否则切换到指定数据库. 删除数据库:切换到要删除的数据库下,执行命令即 ...

  8. 20170411 debug窗口执行文件

    [FUNCTION] Command=/H Title=Debugger Type=SystemCommand

  9. corethink功能模块探索开发(一)根据已有模块推测目录结构

    corethink是opencmf的一个开源版本,如果自己要进行二次开发,开发模块等,需要在官方开一个中级会员(50大洋吧),官网的一个“一键生成demo”就能给你最基础的目录结构,从而可以在此基础上 ...

  10. GCE 创建一个Linux VM

    sudo yum install wget 安装Java sudo wget --no-check-certificate --no-cookies --header "Cookie: or ...