第一步:下载swftools-0.9.2.tar.gz

第二步:swftools

tar -xzvf swftools-0.9.2.tar.gz
cd swftools-0.9.2
./configure
make
make install
make clean
make distclean
whereis pdf2swf

常见错误:
①找不到jpeg命令
jpeg.c:462: error: conflicting types for ‘jpeg_load_from_mem’
jpeg.h:15: note: previous declaration of ‘jpeg_load_from_mem’ was here

解决方案,
下载sjpegsrc.v9a.tar.gz
安装jpeg
tar -xzvf jpegsrc.v9a.tar.gz
cd jpeg-9a
./configure
make
make install
make clean
make distclean

②出现未定义而去使用的错误:
:info:build jpeg.c:109:35: error: use of undeclared identifier 'TRUE'
:info:build jpeg_set_quality(&cinfo,quality,TRUE);
:info:build

解决方案,swftools-0.9.2 中一个文件做修改:

vi lib/jpeg.c

#ifdef HAVE_JPEGLIB
#define HAVE_BOOLEAN
#include

改为:
#ifdef HAVE_JPEGLIB
#ifndef FALSE
#define FALSE 0
#endif
#ifndef TRUE
#define TRUE 1
#endif
#define HAVE_BOOLEAN
#include

③找不到freetype命令错误
yum install freetype

④./lib/libgfx.a(gfxfont.o): In function `gfxfont_free':
gfxfont.c:(.text+0x56): undefined reference to `glyph_clear'
collect2: ld returned 1 exit status
make[1]: *** [swfrender] Error 1
make[1]: Leaving directory `/home/fz/swftools-0.9.1/src'
make: *** [all] Error 2

解决方案:
yum install freetype-devel

⑤可能遇到的问题
modules/.././types.h:39:2: 错误:#error "no way to define 64 bit integer"
modules/.././types.h:42:2: 错误:#error "don't know how to define 32 bit integer"
modules/.././types.h:45:2: 错误:#error "don't know how to define 16 bit integer"
modules/.././types.h:48:2: 错误:#error "don't know how to define 8 bit integer"
解决方法:
[root~]# ldconfig /usr/local/lib
然后再执行
[root~]# ./configure
make
make install

⑥ 还可能遇到的问题
make[1]: *** [install] 错误 1
make[1]: Leaving directory `/root/swftools-0.9.2/swfs'
make: *** [install] 错误 2
解决方法:
将swfs目录下的Makefile和Makefile.in两个文件中的 -o -L 去掉
make install
成功

安装完成后执行一下,pdf2swf -h 有帮助内容显示,则证明安装成功。
如果所转换的PDF不包含中文,则到此为止就可以正常使用了。
如果包含中文,就需要使用到xpdf的字体库

第三步:测试命令是否成功
pdf2swf -T 9 -s poly2bitmap -s zoom=150 -s flashversion=9 "/usr/local/app/xxxie/1.pdf" -o "/usr/local/app/xxxie/1.swf"

如果pdf2swf命令找不到,需要添加pdf2swf到环境变量中
vim /etc/profile
export PATH=$PATH:/usr/local/swftools/bin/

如果中文乱码,进行第四步

第四步:安装xpdf语言包。
到http://www.foolabs.com/xpdf/download.html下载xpdf-chinese-simplified.tar.gz
tar -xzvf xpdf-chinese-simplified.tar.gz
解压到任意路径,例如/usr/local/xpdf/xpdf-chinese-simplified
下载
http://ftp.gnu.org/gnu/non-gnu/chinese-fonts-truetype/gkai00mp.ttf.gz
http://ftp.gnu.org/gnu/non-gnu/chinese-fonts-truetype/gbsn00lp.ttf.gz
解压出ttf文件gkai00mp.ttf和gbsn00lp.ttf,放到/usr/local/xpdf/xpdf-chinese-simplified/CMap/路径下
5. 配置/usr/local/xpdf/xpdf-chinese-simplified/add-to-xpdfrc文件
#----- begin Chinese Simplified support package (2011-sep-02)
cidToUnicode Adobe-GB1 /usr/local/xpdf/xpdf-chinese-simplified/Adobe-GB1.cidToUnicode
unicodeMap ISO-2022-CN /usr/local/xpdf/xpdf-chinese-simplified/ISO-2022-CN.unicodeMap
unicodeMap EUC-CN /usr/local/xpdf/xpdf-chinese-simplified/EUC-CN.unicodeMap
unicodeMap GBK /usr/local/xpdf/xpdf-chinese-simplified/GBK.unicodeMap
cMapDir Adobe-GB1 /usr/local/xpdf/xpdf-chinese-simplified/CMap
toUnicodeDir /usr/local/xpdf/xpdf-chinese-simplified/CMap
displayCIDFontTT Adobe-GB1 /usr/local/xpdf/xpdf-chinese-simplified/CMap/gkai00mp.ttf
displayCIDFontTT Adobe-GB1 /usr/local/xpdf/xpdf-chinese-simplified/CMap/gbsn00lp.ttf
#----- end Chinese Simplified support package

测试命令是否成功

pdf2swf -s languagedir=/usr/local/xpdf-chinese-simplified -T 9 -s poly2bitmap -s zoom=150 -s flashversion=9 "/usr/local/app/xxxie/1.pdf" -o "/usr/local/app/xxxie/1.swf"

centos安装SWFtools服务(pdf2swf)的更多相关文章

  1. centos 安装memcache服务后memcahce本机连接Permission

    自己手动在虚拟机下装了下memcache,整个过程真是充满波折,本身用php5.3安装memcache扩展就麻烦很多,无法通过yum直接安装,安装方法详见http://chenwei.me/blog/ ...

  2. Centos安装vncserver服务

    vnc是一款Windows远程桌面软件,其优点是支持跨操作系统的远程图形化控制.下面开始记录第一次安装vnc服务的过程. 1.先检查系统是否有安装VNC服务 [root@localhost ~]# [ ...

  3. centos安装openoffice服务

    第一步:yum install openoffice.org-brand openoffice.org-core openoffice.org-java-common xvfb openoffice. ...

  4. CentOS 安装nginx服务

    安装nginx服务 sudo yum install nginx 启动nginx systemctl start nginx 加入启动项 systemctl enable nginx 测试nginx服 ...

  5. CentOS安装FTP服务

    最近公司有一个内部比赛(黑客马拉松),报名参加了这么一个赛事,在准备参赛作品的同时(参赛服务器需要自己搭建),借着这个机会,决定把tomcat部署相关的知识从0到1重新捋一遍.就当备忘录了. FTP服 ...

  6. CentOS安装Openfire服务

    原文::http://xiao987334176.blog.51cto.com/2202382/979677 系统是全新新安装的系统.版本号是Centos 5.6 x86 同步北京时间 # ntpda ...

  7. Centos安装vsftp服务

    1.安装vsftp yum install vsftpd 2.开启vsftp服务,设置开机自启 service vsftpd restart chkconfig vsftpd on 停止vsftpd: ...

  8. centos 安装git 服务端

    // 在服务端安装好git后,开始安装gitosis 3.在服务器安装gitosis sudo yum install python python-setuptools cd /usr/local/s ...

  9. centos 安装vnc服务

    1.安装tigervnc-server yum install tigervnc-server 2.启动vnc服务 vncserver:1 [错误提示待解决bad display name " ...

随机推荐

  1. 201521123034 《Java程序设计》第五周学习总结

    1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 2. 书面作业 作业参考文件下载 代码阅读:Child压缩包内源代码 1.1 com.parent包中Child.java文件 ...

  2. 201521123031《Java程序设计》 第2周学习总结

    1. 本周学习总结 (1)能够更加熟练地使用码云 (2)学习了Arrys和String的用法和一些运用 (3)懂得如何查询函数的源代码,通过查看源代码,能够更深入的了解函数适用情况以及利弊 2. 书面 ...

  3. eclipse ide for java ee developers与eclipse ide for java developers有什么区别

    前者集成了WTP,可用于j2ee开发,功能更完善

  4. 参加IMWebConf 2017 前端开发者大会是什么体验?

    周六作为特邀讲师之一参加了IMWebConf 2017 前端开发者大会的主题演讲,主题为<WebAssembly:面向未来的web开发技术>.本次大会质量非常高,来自国内外的技术专家带了很 ...

  5. java继承涉及的动/静态绑定及隐藏

    项目中经常会用到java多态这个特性,之前只知道一些皮毛,现在发现自己对它并没有一个系统的认识,想从新梳理下自己的基础库. 看了java编程思想中对象导论,关于继承的描述:java中的类型不仅仅只是描 ...

  6. Struts2第十三篇【防止表单重复提交】

    回顾防止表单重复提交 当我们学习Session的时候已经通过Session来编写了一个防止表单重复提交的小程序了,我们来回顾一下我们当时是怎么做的: 在Servlet上生成独一无二的token,保存在 ...

  7. Oracle中Union与Union All的区别(适用多个数据库)

    Oracle中Union与Union All的区别(适用多个数据库) 如果我们需要将两个select语句的结果作为一个整体显示出来,我们就需要用到union或者union all关键字.union(或 ...

  8. Python装饰器主要用法

    #!/usr/bin/env python3 # -*- coding: utf-8 -*- __author__ = '人生入戏' user = "admin" passwd = ...

  9. sql server 把数据 复制成脚本文件

    问题描述:想把一个数据库里的表和字段复制到另一个数据库里: 方法一:a.生成脚本文件 选择数据库右键->任务->生成脚本: b. 选择特定的数据库对象->下一步: c.高级-> ...

  10. .net 各种序列化方式效率对比

    在服务与服务之间传输的是二进制数据,而在此之前有多种方法将数据内容进行序列化来减小数据传递大小,现针对于目前主流的几种序列化方式做了简单数据统计对比. 先做下简单介绍↓↓↓ 1.protobuf-ne ...