微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PDF转SWF

通过代码将PDF转换成SWF来说,现在比较常用的一种方式就是利用SWFTools工具中的pdf2swf(http://www.swftools.org/)。这个工具还是比较好用的。转换成的SWF文件质量也不错。

/**

Java代码  

收藏代码

  1.  * PDF转SWF工具  
  2.  * @author tangs  
  3.  *  
  4.  */  
  5. public class Converter {  
  6.     static int convertPDF2SWF(String sourcePath, String destPath, String fileName) throws IOException {  
  7.         //目标路径不存在则建立目标路径  
  8.         File dest = new File(destPath);  
  9.         if (!dest.exists()) dest.mkdirs();  
  10.           
  11. //源文件不存在则返回  
  12.         File source = new File(sourcePath);  
  13. if (!source.exists()) return 0;  
  14. //调用pdf2swf命令进行转换  
  15.         String command = "D:\\Program Files\\SWFTools\\pdf2swf.exe" + " -o \"" + destPath + "\\" + fileName + "\"  <span style="color: #ff0000;">-s languagedir=D:\\xpdf\\xpdf-chinese-simplified</span> -s flashversion=9 \"" + sourcePath + "\"";  
  16.         Process pro = Runtime.getRuntime().exec(command);  
  17.         BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(pro.getInputStream()));  
  18. while (bufferedReader.readLine() != null);   
  19. try {  
  20.             pro.waitFor();  
  21.         } catch (InterruptedException e) {  
  22.             // Todo Auto-generated catch block  
  23.             e.printstacktrace();  
  24.         }  
  25. return pro.exitValue();  
  26.     }  
  27.       
  28. void main(String []args)          String sourcePath = "c:\\test.pdf";  
  29.         String destPath = "c:\\";  
  30.         String fileName = "test.swf";  
  31.         Converter.convertPDF2SWF(sourcePath, destPath, fileName);  
  32. }  

 

    就这么简单的几行代码就可以了。但是在程序中遇到中文就会出现意想不到的情况,这个也不例外。在转换中,我发现有些中文PDF文件转换后会出现乱码的现象,因此这里还要处理一下乱码的问题。看到上面代码中红色的一段了吗?这就是解决乱码的方法。这个方法是参考了http://hi.baidu.com/xwx520/blog/item/1d0c423885b392fab311c72e.html这篇文章,感谢作者。

1.下载XPDF:ftp://ftp.foolabs.com/pub/xpdf/xpdf-chinese-simplified.tar.gz,并解压到xpdf-chinese-simplified目录下。

2.下载字体:http://blog.pjoke.com/wp-content/uploads/2009/02/font.zip,并解压到xpdf-chinese-simplified/CMap目录下。

3.修改xpdf-chinese-simplified目录下的add-to-xpdfrc文件。将里面的路径设为自己的路径:

4.参照上面的代码,在调用pdf2swf命令中加入“ -s languagedir=D:\\xpdf\\xpdf-chinese-simplified ”参数。

这样乱码的问题就解决了。


这里还有一个模仿百度文库的博客http://www.voidcn.com/article/p-telbpffr-rn.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐