`
titanseason
  • 浏览: 180794 次
社区版块
存档分类
最新评论

JAVA如何将PDF转换SWF格式的FLASH

阅读更多

JAVA如何将PDF转换SWF格式的FLASH

 

1. 需要用到的工具

 SWFTools 下载地址 http://www.swftools.org/download.html,下载完成以后,直接安装就行

 

 

 2.下面就是重点喽,详见Java代码解析

 

附件里面有现成的可以用的项目示例,直接导入eclipse就可以运行

 

/**
	 * 将PDF文档转换为swf格式的FLASH文件. 运行该函数需要用到SWFTools, 下载地址为
	 * http://www.swftools.org/download.html
	 * 
	 * <pre>
	 * 示例:
	 * String sourcePath = "F:\\PDF\\source.pdf";
	 * String destFile = "F:\\SWF\\dest.swf";
	 * try {
	 * 	Converter.pdf2SWF(sourcePath, destFile);
	 * } catch (IOException e) {
	 * 	e.printStackTrace();
	 * }
	 * </pre>
	 * 
	 * @param sourceFile
	 *            源文件(即PDF文档)路径, 包括源文件的文件名. 示例: D:\\PDF\\source.pdf
	 * @param destFile
	 *            目标文件路径, 即需要保存的文件路径(包括文件名). 示例: D:\\SWF\\dest.swf
	 * @return 操作成功与否的提示信息. 如果返回 -1, 表示找不到源PDF文件, 或配置文件url.properties配置错误; 如果返回
	 *         0, 则表示操作成功; 返回1或其他, 则表示转换失败
	 */
	public static int pdf2SWF(String sourceFile, String destFile) {

		// 目标路径不存在则建立目标路径
		File dest = new File(destFile);
		if (!dest.getParentFile().exists())
			dest.getParentFile().mkdirs();

		// 源文件不存在则返回 -1
		File source = new File(sourceFile);
		if (!source.exists())
			return -1;

		String SWFTools_HOME = "D:\\Program Files\\SWFTools";//SWFTools的安装路径。在我的项目中,我为了便于拓展接口,没有直接将SWFTools的安装路径写在这里,详见附件
		// 如果从文件中读取的URL地址最后一个字符不是 '\',则添加'\'
		try {
			// 调用pdf2swf命令进行转换swfextract -i - sourceFilePath.pdf -o destFilePath.swf
			String command =  SWFTools_HOME + "\\pdf2swf.exe  -i " + sourceFile + " -o "
					+ destFile;
			Process pro = Runtime.getRuntime().exec(command);

			BufferedReader bufferedReader = new BufferedReader(
					new InputStreamReader(pro.getInputStream()));
			while (bufferedReader.readLine() != null) {

			}
			pro.waitFor();
			return pro.exitValue();
		} catch (InterruptedException e) {
			e.printStackTrace();
		} catch (IOException e1) {
			e1.printStackTrace();
		}

		return 1;
	}
分享到:
评论
9 楼 u012549130 2016-01-31  
如果pdf是多页,生成的swf用FlexPaper显示希望能分页。
8 楼 u012549130 2016-01-31  
楼主,用命令生成的swf不能分页,咋办?
7 楼 hunter_wxl 2014-09-15  
Error: Couldn't create a font for 'BBONVL+SimSun'
Error: Couldn't create a font for 'BQAFKM+SimSun'
Error: Couldn't create a font for 'BQAFKM+STZhongsong'

这是缺少字体,我下载之后还是不行
6 楼 ctj_2 2014-05-01  
gaosong667 写道
你好  如果出现以下错误怎么办
java.io.IOException: Cannot run program "D:\Program": CreateProcess error=2, ?????????

openoffice和swftools安装目录不要有空格。。。。
5 楼 titanseason 2014-04-30  
gaosong667 写道
你好  如果出现以下错误怎么办
java.io.IOException: Cannot run program "D:\Program": CreateProcess error=2, ?????????

SWFTools_HOME 改成你自己的路径
4 楼 gaosong667 2014-04-29  
你好  如果出现以下错误怎么办
java.io.IOException: Cannot run program "D:\Program": CreateProcess error=2, ?????????
3 楼 sunshine_bean 2013-11-11  
      谢谢
2 楼 titanseason 2012-11-16  
poeeva168 写道
如果遇到一页swf文件显示不出来,或者最后一页丢失的情况,添加参数 -T 9 ,flash版本问题

谢谢提醒
1 楼 poeeva168 2012-11-14  
如果遇到一页swf文件显示不出来,或者最后一页丢失的情况,添加参数 -T 9 ,flash版本问题

相关推荐

    将pdf转换为swf在web页面中显示

    利用FlashPaper将pdf转换为swf在使其能在web页面中显示,兼容各大浏览器 测试版本ie7+ 具体操作见博客 http://blog.csdn.net/qianqianyixiao1/article/details/43601645

    java转换PDF

    一个非常不错的纯源码“PDF转换swf”完全脱离安装第三方插件,直接使用java调用Flash api将PDF转换成图片,在将图片转换成swf。积分虽然有点多,但是是我辛苦弄成的列子,如有需要的朋友可以下载看看。觉得积分多了...

    swf.exe等转换工具

    主要是用openoffice时用到的转换工具,pdf2swf.exe等转换工具

    JAVA上百实例源码以及开源项目

     Java zip压缩包查看程序,应用弹出文件选择框,选择ZIP格式的压缩文件,可以像Winrar软件一样查看压缩文件内部的文件及文件夹,源码截图如上所示。 Java 数字签名、数字证书生成源码 2个目标文件 摘要:JAVA源码,...

    JAVA上百实例源码以及开源项目源代码

     Java zip压缩包查看程序,应用弹出文件选择框,选择ZIP格式的压缩文件,可以像Winrar软件一样查看压缩文件内部的文件及文件夹,源码截图如上所示。 Java 数字签名、数字证书生成源码 2个目标文件 摘要:JAVA源码,...

    java开源包11

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包6

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包4

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包9

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包101

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包5

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包8

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包10

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    文件上传、转换和浏览(fileconvertandview.rar)

    上传文件,并调用openoffice服务,利用JODConverter(java转换器--v2.2.2)将office文档转换为pdf,然后调用swftools工具将pdf转换为swf,最后用flexpaper浏览flash(swf)文件。(需要装openoffice.org工具和swftools工具)

    文件上传、转换和浏览(fileconvertandbrowser.rar)

    上传文件,并调用openoffice服务,利用JODConverter(java转换器--v2.2.2)将office文档转换为pdf,然后调用swftools工具将pdf转换为swf,最后用flexpaper浏览flash(swf)文件。(需要装openoffice.org工具和swftools工具)

    java开源包3

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包1

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包2

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包7

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    Java资源包01

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

Global site tag (gtag.js) - Google Analytics