基于Java SWFTools实现把pdf转成swf
作者:龙谷情Sinoam 发布时间:2023-09-01 20:19:02
标签:SWFTools,pdf,swf
SWF Tools 是一组用来处理 Flash 的 swf 文件的工具包,包括:
1. 合并工具 swfcombine
2. 抽取工具 swfextract
3. PDF/JPEG/PNG/AVI/TTF/WAV 到 SWF 的转换工具 :pdf2swf, jpeg2swf, png2swf, avi2swf, font2swf, and wav2swf|
4. 文本解析工具 swfstrings
5. SWF 解析器 swfdump
6. SWF 读写库 rfxswflib
1.下载swfTools并安装,下载地址http://www.swftools.org/download.html
2.复制代码到工具类中
...
/**
* pdf转swf
* swfDir 存的exe文件路径,我的是:D:/SWFTools/pdf2swf.exe
*
*/
private File pdf2swf(File pdfFile) throws Exception {
//下载的文件转成pdf的pdf将要放置的路径
String swfPath = templateSwfDir + pdfFile.getName() + ".swf";
File swfFile = new File(swfPath);
Runtime r = Runtime.getRuntime();
if (swfFile.exists()) {
swfFile.delete();
}
if (!pdfFile.exists()) {
throw new Exception("程序出现问题,pdf不存在");
}
try {
Process p = r.exec(swfDir + " " + pdfFile.getPath() + " -o " + swfFile.getPath() + " -T 9");
loadStream(p.getInputStream());
loadStream(p.getErrorStream());
loadStream(p.getInputStream());
} catch (IOException e) {
e.printStackTrace();
throw e;
}
return swfFile;
}
static String loadStream(InputStream in) throws IOException {
int ptr = 0;
in = new BufferedInputStream(in);
StringBuffer buffer = new StringBuffer();
while ((ptr = in.read()) != -1) {
buffer.append((char) ptr);
}
return buffer.toString();
}
...
来源:https://www.cnblogs.com/lgqrlchinese/p/13083608.html


猜你喜欢
- 示例代码:class BoxIntInteger {public static void main(String[] args) {Inte
- 一、settings.xml文件会在两个目录下存在:1、Maven安装目录(全局):%MAVEN_HOME%\conf\settings.x
- 在很多web产品中都需要实现在同一时刻,只能允许一个账号同时只能在一个浏览器当中登录。通俗点讲就是当A账号在浏览器1当中登录了,此时在浏览器
- 还是有一些小问题....懒得改了,但大体思路还是清晰的,首先定义一个运算符栈,一个数栈。关于优先级,两个括号(,)优先级最低,其次是+、-,
- 本文实例讲述了C#自定义签名章实现方法。分享给大家供大家参考。具体实现方法如下:using System;using System.Coll
- 目录基本查询延迟查询属性类型筛选复合from子句多级排序分组联合查询-join合并-zip()分区(分页)并行linq取消长时间运行的并行l
- 一、准备官网下载IntelliJ IDEA 2017 并安装好下载汉化包 (链接: https://pan.baidu.com/s/1JkU
- Springboot上传文件时提示405问题描述:上传文件时请求不通,状态码返回405,如下图: 问题分析:405 Method
- 概述spirng-aop模块是Spring框架中的核心模块,虽然Spring Ioc container并不依赖AOP,但AOP给Ioc的实
- 1、局部变量在方法或语句块中定义的变量被称为局部变量。变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。局部变量声明在方法、构造方
- springboot整合redis主从sentinel一主二从三sentinel配置1、master:127.0.0.1:63792、sla
- 几个重要的函数:#include <pthread.h>int pthread_mutex_init(pthread_mutex
- 本文实例讲述了Java实现字符串解析为日期时间的方法。分享给大家供大家参考,具体如下:Java版本:1.8开始import java.tim
- mybatis-plus想要修改某字段为null问题场景使用mybatis + mybatisPlus进行修改某字段,想要将其设为null,
- Android canvas drawBitmap方法详解及实例之前自己在自定义view,用到canvas.drawBitmap
- 实践过程效果代码public partial class Frm_Libretto : Form{ public
- 高并发下restTemplate的错误分析1. 问题现象和分析org.apache.http.conn.ConnectionPoolTime
- 希尔排序是插入排序的一种,又称"缩小增量排序”,是插入排序算法的一种更高效的改进版本。希尔排序原理1.选定一个增长量h,按照增长量
- 一、引言在许多编程语言中,都有函数回调这一概念。C 和 C++ 中有函数指针,因此可以将函数作为参数传给其它函数,以便过后调用。而在 Jav
- 异常日志[com.alibaba.dubbo.rpc.filter.TimeoutFilter] - [DUBBO] invok