欢迎光临
我们一直在努力

flexpaper 在Dedecms中调用doc,pdf文档转换flash调用

本文综合收集于网络:

flexpaper的地址:http://flexpaper.googlecode.com/files/FlexPaper_1.4.5-rc1_flash.zip

swftools 的地址:http://www.swftools.org/

将PDF转换为swf 格式的flash文件
注意要加版本号转换为9版本的,否则调用出来不显示,这个问题让我这菜鸟琢磨了一天。
命令如下:
pdf2swf filename.pdf -o filename.swf -s flashversion=9
swftools中pdf2swf参数具体如下,直接输入pdf2swf也能显示帮助。
参考:http://ccuzjs.blog.163.com/blog/static/30438443201122222233583/

swftools将PDF转成swf
SWFTools提供了一系列将各种文件转成swf的工具:

font2swf.exe
//把字体文件转成flash(SWF)文件,应该是为了写flash时调用字体用的
jpeg2swf.exe
//把多张jpeg转成一个swf的slideshow
png2swf.exe
//和jpeg2swf差不多,适用于png格式的图片而已
gif2swf.exe
//这个也和jpeg2swf差不多,而且支持动态的gif文件
pdf2swf.exe
//在xpdf的基础上开发的,能解析pdf,并把pdf转成flash(SWF)文件,对中文等多字节字体支持很好
swfcombine.exe
//合并两个swf文件,应该说是把一个由pdf2swf生成的swf文件插入到一个swf模板中,比如添加导航条等功能
wav2swf.exe
//把声音文件转成swf,需要lame的mp3 encoder 类支持
swfstrings.exe
//扫描swf文件,并导出text文本,swf2text,用于抽取swf中的文字,这样swf也可以支持文字查找了。
swfbbox.exe
//这个也许应该理解为显示和调整swf尺寸的,有些pdf文件转成swf后会出现显示不完整的现象,那就要用到这个了

具体的功能就顾名思义了。

——————————————————————————–

其中把pdf转成swf的工具就是pdf2swf了。在命令行中运行pdf2swf src.pdf des.swf一般能满足需求。而命令行参数可以通过pdf2swf -f得到:

-h , –help Print short help message and exit 打印帮助信息
-V , –version Print version info and exit 打印版本号
-o , –output file.swf Direct output to file.swf. If file.swf contains ‘13568621′ (file13568630.swf), then each page指定输出的swf文件名
-p , –pages range Convert only pages in range with range e.g. 1-20
or 1,4,6,9-11 or

指定转换的页面范围,使用的页码描述方法与打印机打印文件时候的选页一样

-P , –password password Use password for deciphering the pdf.指定打开pdf的密码
-v , –verbose Be verbose. Use more than one -v for greater effect.转换时输出详细的内容
-z , –zlib Use Flash 6 (MX) zlib compression.使用Flash 6的zlib压缩机制
-i , –ignore Allows pdf2swf to change the draw order of the pdf. This may make the generated允许程序修改pdf的绘制顺序,可能会导致结果与原来有差异
-j , –jpegquality quality Set quality of embedded jpeg pictures to quality. 0 is worst (small), 100 is best (big). (default:85)设置转换其中的jpeg图片的质量,从0到100,默认值是85。
-s , –set param=value Set a SWF encoder specific parameter. See pdf2swf -s help for more information. 设置SWF转码时候的参数,具体参数可以用pdf2swf -s help获取
-w , –samewindow When converting pdf hyperlinks, don’t make the links open a new window. 设置转换后的swf打开原pdf中的连接时使用相同的窗口
-t , –stop Insert a stop() command in each page. 在每页结尾添加一个stop()命令
-T , –flashversion num Set Flash Version in the SWF header to num. 设置SWF所使用的flash版本号
-F , –fontdir directory Add directory to the font search path. 指定字体文件所在路径
-b , –defaultviewer Link a standard viewer to the swf file. 指定默认的swf导航文件,用来翻页、放大缩小等等
-l , –defaultloader Link a standard preloader to the swf file which will be displayed while the main swf is loading. 指定默认的swf加载文件,用来显示加载进程效果
-B , –viewer filename Link viewer filename to the swf file. 指定swf导航文件,作用同-b
-L , –preloader filename Link preloader filename to the swf file. 指定swf加载文件,作用同-l
-q , –quiet Suppress normal messages. Use -qq to suppress warnings, also. 不打印普通信息,用-qq就不打印警告信息。
-S , –shapes Don’t use SWF Fonts, but store everything as shape. 不使用字体,所有都转为形状。
-f , –fonts Store full fonts in SWF. (Don’t reduce to used characters). 在swf中保存全部字体。
-G , –flatten Remove as many clip layers from file as possible. 在文件中尽量去除影片层,合并它们
-I , –info Don’t do actual conversion, just display a list of all pages in the PDF. 不做实际转换,仅显示PDF的信息。
-Q , –maxtime n Abort conversion after n seconds. Only available on Unix. 如果运行时间超时则退出。

——————————————————————————–
然后看看-s都可以设置些什么:
PDF Parameters:
PDF device global parameters:
fontdir= a directory with additional fonts 指定字体目录, 与1级参数的-F相若
font= an additional font filename 增加额外的字体文件
pages= the range of pages to convert (example: pages=1-100,210-) 指定页面范围,与1级参数的-p相若
zoom= the resolution (default: 72) 指定分辨率,默认为72dpi
languagedir= Add an xpdf language directory 增加一个xpdf的语言目录,对非西欧字符有用
multiply= Render everything at the resolution 在几倍分辨率下渲染
poly2bitmap Convert graphics to bitmaps 把其中的图形转成点阵
bitmap Convert everything to bitmaps 把所有内容转成点阵(包括字体)

SWF Parameters:

SWF layer options:
jpegsubpixels= resolution adjustment for jpeg images (same as jpegdpi, but in pixels) jpeg图片的分辨率
ppmsubpixels= resolution adjustment for lossless images (same asppmdpi, but in pixels) 无损图片的分辨率
subpixels= shortcut for setting both jpegsubpixels and ppmsubpixels 快速设置上两个参数
drawonlyshapes convert everything to shapes (currently broken) 所有都转成图形
ignoredraworder allow to perform a few optimizations for creating smaller SWFs 允许执行一些小优化
linksopennewwindow make links open a new browser window 链接打开新窗口
linktarget target window name of new links 新链接窗口的名称
linkcolor=
linknameurl Link buttons will be named like the URL they refer to (handy for iterating through links with actionscript) 链接名称与链接URL一致
storeallcharacters don’t reduce the fonts to used characters in the output file 保存所有的字符字体
enablezlib switch on zlib compression (also done if flashversion>=7) 使用zlib压缩
bboxvars store the bounding box of the SWF file in actionscript variables 在as中保存swf的区域大小
dots Take care to handle dots correctly 保存单点显示
reordertags=0/1 (default: 1) perform some tag optimizations 执行某些tag优化
internallinkfunction= when the user clicks a internal link (to a different page) in the converted file, this actionscript function is called 内部链接函数,如果点击一个内部链接,将调用该actionscript函数
externallinkfunction= when the user clicks an external link (e.g. http://www.foo.bar/) on the converted file, this actionscript function is called 外部链接函数,如果点击一个外部链接,将调用该actionscript函数
disable_polygon_conversion never convert strokes to polygons (will remove capstyles and joint styles) 不要将笔画转成多边形
caplinewidth= the minimum thichness a line needs to have so that capstyles become visible (and are converted) 线条最低转换宽度,比这个细的线条将不转换
insertstop put an ActionScript “STOP” tag in every frame 在swf的每个桢中添加stop()函数
protect add a “protect” tag to the file, to prevent loadingin the Flash editor 增加protect标签,禁止在flash中加载该swf
flashversion= the SWF fileversion (6) 设置最低swf版本
framerate= SWF framerate 设置桢率
minlinewidth= convert horizontal/vertical boxes smaller than thiswidth to lines (0.05)将宽度少于某值的矩形转成线条
simpleviewer Add next/previous buttons to the SWF 使用简单的导航
animate insert a showframe tag after each placeobject (animate draw order of PDF files) ???
jpegquality= set compression quality of jpeg images 设置jpeg的压缩质量
splinequality= Set the quality of spline convertion to value (0-100, default: 100). 设置样条曲线的转换质量
disablelinks Disable links. 禁止链接

——————————————————————————–
在含中文的pdf转换时会遇到一些麻烦,具体的解决方法:(javaeye上的文字)
1. 下载swftools:http://www.swftools.org/download.html

下载xpdf xpdf-chinese-simplified

下载两个中文字体文件 字体文件

2 .安装swftools 至任意路径

解压缩xpdf 至任意路径

解压缩中文字体至xdpfchinese-simplifiedCMap文件夹下

3. 修改xpdf下xpdfrc文件 将cidToUnicode 等路径改为本机路径,

修改xpdf下chinese-simplifiedadd-to-xpdfrc文件 同上

4. 打开命令行窗口: pdf2swf -o 输出文件路径 -t 输入文件路径 -s languagedir=xpdf路径chinese-simplified

——————————————————————————–
有些pdf中的图形转换效果不好,会产生过多shape,这种情况下可以使用 -s poly2bitmap 的参数,将图形转成点阵。生成的swf尺寸少了。

SWFObject参数调用说明

http://www.cgeggs.cn/html/2011/swfobject_0116/658.html

最近看到了好几个Flash网站,head代码里都加载了一个swfobject.js,这个JS究竟有什么作用呢?眼下正在做一个Web页面,说不定刚好可以派上用场。于是,好奇的搜索了一下。原来这是老外开发的,用于在HTML中方面插入Adobe Flash媒体资源(*.swf文件)的独立、敏捷的JavaScript模块,该模块中的JavaScript脚本能够自动检测PC、Mac机器上各种主流浏览器对Flash插件的支持情况。目前最新的版本是2.2,这里可以下载最新版的SWFObject:
http://code.google.com/p/swfobject/

发现用它的好处多多啊:
1.IE中没有讨厌的虚框问题了。
2.提供了完善的版本检测功能,如果版本不够则显示其他东西,比如图片或文字。
3.易于使用,只要在页面头加载一个 .js 文件,然后 HTML 写一个容器,里面放普通的文本或图片(用于无法显示 Flash 时显示),最后用脚本来替换这个元素里面的内容为 Flash。
4.使得插入Flash媒体资源尽量简捷、安全。而且它是非常符合搜索引擎优化的原则的。
5.能够避免HTML、XHTML中出现object、embed等非标准标签,从而符合更加标准。

只需要包含 swfobject.js这个js文件,然后在DOM中插入一些简单的JS代码,就能嵌入Flash媒体资源了。下面是一个最简单的范例:

 

This text is replaced by the Flash movie.

让我们看看这些代码是如何工作的

[…]

首先,我们要为SWF资源预留一个HTML结点。这个HTML结点内的所有内容都会在客户端被Flash资源替换,当客户端没有安装Flash播放器的时候,这些内容会显示出来。这一特色在SEO以及对用户体验方面非常有必要。

var so = new SWFObject(swf, id, width, height, version, background-color [, quality, xiRedirectUrl, redirectUrl, detectKey]);创建一个新的SWFObject实例,并且传入一下参数:

swf – SWF文件路径
id – 您为这个SWF文件分配的id值,它将用于给embed与object标签设定name属性,以便于可以支持swliveconnect的功能,如动态传入变量
width – 宽度
height – 高度
version – FlashPlayer需要的版本号,它可以详细到 ‘主版本号.小版本号.细节’,例如:”6.0.65″。一般地,我们只需传入主版本即可,例如:”6″。
background-color – Flash资源的背景色,16进制格式
此外,还有如下可选参数:

quality – 画面质量,默认为”high”。
xiRedirectUrl – 详见ExpressInstall相关
redirectUrl – 没有安装相应版本的播放器后自动跳转的目标地址
detectKey – 这是当忽略检测时,SWFObject将去url地址中查找的变量,默认值为“detectflash”,后续有详细介绍
so.write(“flashcontent”);将Flash资源应用到DOM里,在浏览器显示出来。

SWFObject在

 

之间加入多个参数来实现各个效果,参数很多,但是实际只要一点点。我们可以看下这样的代码:


这段代码给出了SWFObject的常用参数:

var so = new SWFObject(swf, id, width, height, version, background-color [, quality, xiRedirectUrl, redirectUrl, detectKey]);
so.addParam(“Param1”, “Param2”);
so.addParam(“Param3”, “Param4”);
so.addParam(“Param5”, “Param6”);
so.addVariable(“variable1”, “value1”);
so.addVariable(“variable2”, “value2”);
so.addVariable(“variable3”, “value3”);
so.addVariable(“variable1”, getQueryParamValue(“variable1”));
so.addVariable(“variable2”, getQueryParamValue(“variable2”));
so.write(“content”);

解释一下这些参数的作用:

var so = new SWFObject(swf, id, width, height, version, background-color [, quality, xiRedirectUrl, redirectUrl, detectKey]); //这段是SWFObject必须的基本参数,所有SWFObject都必须包含的。
so.addParam(“Param1”, “Param2”); //这里是给Flash添加内联参数,可以实现诸如背景透明之类的效果。依照需求添加就可以了,参数和emded/object标签是一样的代码,下同。
so.addParam(“Param3”, “Param4”);
so.addParam(“Param5”, “Param6”);
so.addVariable(“variable1”, “value1”); //这里是给Flash添加FlashVar,这是以FlashVar的方式给Flash的Root添加变量,对于Number型变量在Flash端需要做类型转换。
so.addVariable(“variable2”, “value2”);
so.addVariable(“variable3”, “value3”);
so.addVariable(“variable1”, getQueryParamValue(“variable1”)); //Flash获取URL变量对于url?arg1=test1&arg2=test2这样用GET方式传递变量的URL,我们可以用getQueryParamValue方法来获取变量。
so.addVariable(“variable2”, getQueryParamValue(“variable2”));
so.write(“content”); //这里是至关重要的一个地方,他是用一段特定内容取代Flash无法显示时的内容。可以事先在CSS里定义好样式,在文档里使用div标签写出来。这里在调用过来。

dedecms调用,主要是复制软件模型,加上调用flash显示参数字段,修改软件页面展示模版,呈现出来。
dede论坛中做这块的演示大部份都是用的这个模版。
http://bbs.dedecms.com/read.php?tid=262272&keyword=%B6%B9%B6%A1
其中的article_book.htm修改了onlineview调用参数。
article_book.htm模版全部代码如下:

 


{dede:include filename=”comm_js.htm”/}

 

 


 
 


{dede:include filename=”head.htm”/}

""

{dede:field.title/}文档信息

{dede:field.pagenumber/}页


    • 收藏
  • 下载

 


 


推荐文档

{dede:arclist flag=’c’ titlelen=42 row=6 imgwidth=40 imgheight=50}

[field:image/]
pdf[field:title/]
热度:

{/dede:arclist}


  • "缩进"

 




{dede:memberinfos}

文档上传人

[field:uname/]
用户等级: [field:rankname /]
最后登录: [field:logintime function=”MyDate(‘Y-m-d H:m’,@me)”/]

{/dede:memberinfos}

"下载文档"

文档数据

    • 发布:{dede:field.pubdate function=”GetDateMk(‘@me’)”/}
    • 热度:{dede:field.softrank function=’GetRankStar(@me)’/}
    • 下载:
    • 浏览:

    • 评论:
  • 收藏:


文档介绍

{dede:field.introduce/}

 


{dede:include file=’ajaxfeedback.htm’ /}





推荐文档

{dede:arclist flag=’c’ titlelen=42 row=8}

[field:image/]
[field:title/]

{/dede:arclist}


热门文档

{dede:arclist row=10 orderby=click}

[field:image/]
[field:title/]

{/dede:arclist}

 


{dede:include filename=”footer.htm”/}

赞(0) 打赏
未经允许不得转载:新席地网博客 » flexpaper 在Dedecms中调用doc,pdf文档转换flash调用
分享到: 更多 (0)
标签:

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  • Q Q(选填)

新席地网-苏州网站制作,360度全景摄影,微信小程序营销推广,抖音运营推广

QQ :13945502电话:13913571631

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

×
订阅图标按钮