转自:http://www.cnblogs.com/liver.wang/archive/2011/10/27/PDF2SWFChinese.html
PDF2SWF中文字符集解决方案
前几天使用PDF2SWF实现了项目中的一个预览的小功能,后期遇到中文内容无法成功显示的Bug,困扰的不轻,网上也搜到不少资料,但是当时是在公司里处理问题,很多网上资源被公司屏蔽,导致迟迟不能奏效,最后折腾了大半天,才实现功能,下面详细总结一下。
准备资料:
1.xpdfbin-win-3.03.zip、xpdf-chinese-simplified.tar.gz
下载地址:http://www.foolabs.com/xpdf/download.html
2.两个中文字体文件:gkai00mp.ttf、Gbsn00lp.ttf
下载地址:http://code.google.com/p/atyu30/downloads/detail?name=gbsn00lp.ttf.tar.gz&can=2&q=
http://download.csdn.net/detail/blackjack2007u/1841186(不要骂我,被逼无奈好不容易在CSDN找到这个下载地址)
3.加上PDF2SWF工具 http://www.swftools.org/download.html
首先安装SWFTools,不考虑中文的情况下,一个pdf2swf.exe已经足够我们使用转换任务。
下面集中精力解决中文字符的问题。
1.解压缩xpdfbin-win-3.03.zip到指定目录(C:\xpdf)
2.解压缩xpdf-chinese-simplified.tar.gz 到上面的目录下(C:\xpdf\xpdf-chinese-simplified)
3.拷贝两个字体文件gkai00mp.ttf、Gbsn00lp.ttf到CMap目录下(C:\xpdf\xpdf-chinese-simplified\CMap)
4.修改C:\xpdf\xpdf-chinese-simplified下的add-to-xpdfrc文件<注意相关路径配置>
复制代码
#----- begin Chinese Simplified support package (2011-10.27)
cidToUnicode Adobe-GB1 c:\xpdf\xpdf-chinese-simplified\Adobe-GB1.cidToUnicode
unicodeMap ISO-2022-CN c:\xpdf\xpdf-chinese-simplified\ISO-2022-CN.unicodeMap
unicodeMap EUC-CN c:\xpdf\xpdf-chinese-simplified\EUC-CN.unicodeMap
unicodeMap GBK c:\xpdf\xpdf-chinese-simplified\GBK.unicodeMap
cMapDir Adobe-GB1 c:\xpdf\xpdf-chinese-simplified\CMap
toUnicodeDir c:\xpdf\xpdf-chinese-simplified\CMap
displayCIDFontTT Adobe-GB1 C:\xpdf\xpdf-chinese-simplified\CMap\gbsn00lp.ttf
displayCIDFontTT Adobe-GB1 C:\xpdf\xpdf-chinese-simplified\CMap\gkai00mp.ttf
#----- end Chinese Simplified support package
复制代码
OK,下面看一下执行的过程:
在普通的pdf2swf -o {0} -t {1} 形式的命令后,加上一个-s 指定languagedir,就可以成功解决中文PDF2SWF的问题啦!
仅供参考!
分享到:
相关推荐
5. **使用第三方工具**:如果以上方法仍无法解决问题,可以考虑使用其他PDF转SWF工具,如Adobe的`PDF2SWF`或其他商业解决方案,它们可能提供了更好的中文支持。 压缩包文件中可能包含的资源包括示例PDF文档、已配置...
"swf2pdf中文支持包"就是针对这一需求提供的一种解决方案,特别关注于解决中文乱码问题。 "swf2pdf"工具是专门用来将SWF文件转换为PDF的软件。在处理包含中文字符的SWF文件时,如果没有正确的语言支持,可能会出现...
然而,由于SWF格式本身对Unicode字符集的支持有限,所以在使用`swftools`转换含有中文的PDF时,可能会出现乱码或者无法正确显示的问题。 为了解决这个中文转换问题,我们可以采用以下步骤: 1. 首先,使用`xpdf` ...
总的来说,swfTools结合XPDF是一个强大且灵活的解决方案,可以帮助你顺利地将包含中文字体的SWF文件转换为PDF。通过理解这两个工具的功能和使用方法,你可以有效地处理各种文件转换需求,尤其是在面对含有特殊字体的...
这使得转换后的SWF文件可以正确显示各种语言,包括中文、日文和韩文等非拉丁字符集。 5. **图片支持**: 在转换过程中,SwfTools能够处理PDF中的图像,包括JPEG、PNG、GIF等常见格式。转换后,图像的质量和尺寸可以...
这些工具不仅为开发者提供了便捷的方式来管理SWF文件,还为那些需要与Flash内容互动的用户提供了一个有效的解决方案。 #### 二、主要工具介绍 ##### 1. 合并工具swfcombine - **功能**:swfcombine主要用于将多个...
因为它依赖于用户的操作系统代码页,这意味着如果用户操作系统不支持文本文件中的特定字符集,那些字符将会显示为乱码。例如,一个包含中文字符的文本文件在使用CP1252编码的系统上可能会出现乱码,因为CP1252不包含...
本项目"PDF_word预览.rar"提供了一个基于Java开发的解决方案,它支持PDF、Word、Excel和PPT文档的在线预览。下面将详细阐述这个项目的核心技术和实现原理。 首先,该项目使用OpenOffice作为后端处理引擎。...
为了解决这个问题,"xpdf-chinese-simplified"应运而生,它是一个专为SWFTools扩展中文字符集和字体库的解决方案。 xpdf-chinese-simplified的核心功能在于提供一套完整的简体中文字体库,使得SWFTools能够更好地...
【AE问题集[归类].pdf】文档是一个关于Adobe After Effects(AE)常见问题和解决方案的集合,涵盖了软件开发中的AE使用技巧。以下是对部分问题的详细解释: 1. **AE中如何输出单帧图片?** 使用快捷键Ctrl+Alt+S...
在标准键盘上,这些语言由于字符集庞大,不能直接通过键入对应的字母来实现,因此需要通过IME进行转换。 #### 二、GFx 3.0 版本改进内容概览 GFx 3.1版本相较于之前版本在IME功能上进行了多项优化和增强,文档中...
... 1. **PHP中文帮助文档**:`php_manual_zh.chm` 和 `PHP完全中文手册.CHM` 是PHP的中文官方手册,是学习PHP的重要参考资料。...建议在学习过程中,遇到不...记得随时查阅中文帮助文档,以获取最新的技术信息和解决方案。
Text Layout Framework的架构设计旨在为用户提供灵活且强大的排版解决方案,同时确保与现有技术的兼容性和跨平台的一致性。通过分离关注点,该框架能够高效地处理复杂的数据模型和布局需求。 - **核心组件**:处理...
JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...
JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...
JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...
JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...
JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...
JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...
JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...