java中将PDF转图片格式
来源:互联网 发布:尤因数据 编辑:程序博客网 时间:2024/06/06 16:34
package test;
import java.awt.image.BufferedImage;
import java.awt.image.RenderedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import org.icepdf.core.pobjects.Document;
import org.icepdf.core.util.GraphicsRenderingHints;
/*
* yuashishi
* 2017-02-27 13:34
* pdf 转 图片
*/
public class Icepdf_PDF_TO_IMG {
String PDF_To_imgName = "";//生成的图片名字
String img_postfix = "";//生成图片的后缀名如.jpg\.png
String pdfPath = "";//PDF路径
String path = "";//图片保存路径
String result = "false";//是否转换成功 false\success
String PDF_To_imgName_var = "";//临时变量 图片名称
/**
* yuanshishi
* 2017-02-27 12:05
* PDF转换成图片格式 .jpg\.png
* @param args
* 图片名称前部分 如果有多张就会:图片名称前部分+0、1、2、3.....jpg
* PDF_To_imgName 生成的图片名字
* img_postfix 生成图片的后缀名如.jpg\.png
* pdfPath PDF路径
* path 图片保存路径
* PDF_To_imgName_var 临时变量 可能会
*
*/
public String pdf_toConvert_img(String PDF_To_imgName,String img_postfix,String pdfPath, String path){
Document document = new Document();
try {
document.setFile(pdfPath);
} catch (Exception e) {
System.out.println("*********java.io.FileNotFoundException,系统找不到指定的文件。*********");
}
float scale = 2.5f;//缩放比例
float rotation = 0f;//旋转角度
int totalPage = document.getNumberOfPages();//获取PDF总页数
System.out.println("文件总页数totalPage为:========"+totalPage+"页");
for (int i = 0; i < totalPage; i++) {
BufferedImage image = (BufferedImage)
document.getPageImage(i, GraphicsRenderingHints.SCREEN, org.icepdf.core.pobjects.Page.BOUNDARY_CROPBOX, rotation, scale);
RenderedImage rendImage = image;
try {
if(PDF_To_imgName==null || "".equals(PDF_To_imgName)){
PDF_To_imgName_var = i +img_postfix; //0.jpg 等等
}else{
if(totalPage>1){//大于1页存在有多页数据时 将通过传输的名字+加上每页的页数
PDF_To_imgName_var = PDF_To_imgName+"_"+(i+1)+img_postfix;
}else{
//只有一页数据时 将通过传送的名字当做图片名称
PDF_To_imgName_var = PDF_To_imgName+img_postfix;
}
}
System.out.println("PDF_To_imgName========="+PDF_To_imgName_var);
File file = new File(path + PDF_To_imgName_var);
ImageIO.write(rendImage, "jpg", file);
result="success";//返回转换成功的结果
} catch (IOException e) {
e.printStackTrace();
System.out.println("==================PDF格式转换"+img_postfix+"格式失败!=====result=="+result);
return result; //返回转换失败
}
image.flush();
}
document.dispose();
System.out.println("=======转换的结果======result==="+result);
return result;
}
public static void main(String[] args) {
String imgName = "201702271210"; //生成的图片名字
String img_postfix = ".jpg"; //生成图片的后缀名如.jpg\.png
//String PDFfilePath = "F:\\PDFtoJPG\\ATM密码键盘解析层接口文档.pdf"; //PDF路径
String PDFfilePath = "F:\\PDFtoJPG\\0109091732.pdf"; //PDF路径
String path = "F:\\PDFtoJPG\\"; // 图片保存路径
Icepdf_PDF_TO_IMG obj = new Icepdf_PDF_TO_IMG();
String ret= obj .pdf_toConvert_img(imgName, img_postfix,PDFfilePath,path);
System.out.println("========ret====="+ret);
}
}
import java.awt.image.BufferedImage;
import java.awt.image.RenderedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import org.icepdf.core.pobjects.Document;
import org.icepdf.core.util.GraphicsRenderingHints;
/*
* yuashishi
* 2017-02-27 13:34
* pdf 转 图片
*/
public class Icepdf_PDF_TO_IMG {
String PDF_To_imgName = "";//生成的图片名字
String img_postfix = "";//生成图片的后缀名如.jpg\.png
String pdfPath = "";//PDF路径
String path = "";//图片保存路径
String result = "false";//是否转换成功 false\success
String PDF_To_imgName_var = "";//临时变量 图片名称
/**
* yuanshishi
* 2017-02-27 12:05
* PDF转换成图片格式 .jpg\.png
* @param args
* 图片名称前部分 如果有多张就会:图片名称前部分+0、1、2、3.....jpg
* PDF_To_imgName 生成的图片名字
* img_postfix 生成图片的后缀名如.jpg\.png
* pdfPath PDF路径
* path 图片保存路径
* PDF_To_imgName_var 临时变量 可能会
*
*/
public String pdf_toConvert_img(String PDF_To_imgName,String img_postfix,String pdfPath, String path){
Document document = new Document();
try {
document.setFile(pdfPath);
} catch (Exception e) {
System.out.println("*********java.io.FileNotFoundException,系统找不到指定的文件。*********");
}
float scale = 2.5f;//缩放比例
float rotation = 0f;//旋转角度
int totalPage = document.getNumberOfPages();//获取PDF总页数
System.out.println("文件总页数totalPage为:========"+totalPage+"页");
for (int i = 0; i < totalPage; i++) {
BufferedImage image = (BufferedImage)
document.getPageImage(i, GraphicsRenderingHints.SCREEN, org.icepdf.core.pobjects.Page.BOUNDARY_CROPBOX, rotation, scale);
RenderedImage rendImage = image;
try {
if(PDF_To_imgName==null || "".equals(PDF_To_imgName)){
PDF_To_imgName_var = i +img_postfix; //0.jpg 等等
}else{
if(totalPage>1){//大于1页存在有多页数据时 将通过传输的名字+加上每页的页数
PDF_To_imgName_var = PDF_To_imgName+"_"+(i+1)+img_postfix;
}else{
//只有一页数据时 将通过传送的名字当做图片名称
PDF_To_imgName_var = PDF_To_imgName+img_postfix;
}
}
System.out.println("PDF_To_imgName========="+PDF_To_imgName_var);
File file = new File(path + PDF_To_imgName_var);
ImageIO.write(rendImage, "jpg", file);
result="success";//返回转换成功的结果
} catch (IOException e) {
e.printStackTrace();
System.out.println("==================PDF格式转换"+img_postfix+"格式失败!=====result=="+result);
return result; //返回转换失败
}
image.flush();
}
document.dispose();
System.out.println("=======转换的结果======result==="+result);
return result;
}
public static void main(String[] args) {
String imgName = "201702271210"; //生成的图片名字
String img_postfix = ".jpg"; //生成图片的后缀名如.jpg\.png
//String PDFfilePath = "F:\\PDFtoJPG\\ATM密码键盘解析层接口文档.pdf"; //PDF路径
String PDFfilePath = "F:\\PDFtoJPG\\0109091732.pdf"; //PDF路径
String path = "F:\\PDFtoJPG\\"; // 图片保存路径
Icepdf_PDF_TO_IMG obj = new Icepdf_PDF_TO_IMG();
String ret= obj .pdf_toConvert_img(imgName, img_postfix,PDFfilePath,path);
System.out.println("========ret====="+ret);
}
}
1 0
- java中将PDF转图片格式
- java项目中pdf转图片格式(jpg)
- pdf在线转图片格式怎么转
- 在线将pdf转图片格式怎么转
- MATLAB脚本图片格式eps转pdf
- pdf在线转图片格式的方法
- pdf转化成图片格式
- pdf转图片格式的方法,有它就能搞定
- Java-图片格式
- java web中将数据导出为pdf格式文件代码片段
- 免费的pdf图片格式转换器
- java中将word转String
- 如何将jpg转换成pdf图片格式
- 如何把PDF转换成图片格式
- 如何将jpg转换成pdf图片格式
- 如何将pdf转换成jpg图片格式
- pdf如何转换成jpg图片格式
- 如何在线将pdf转换成图片格式
- xpath从此放弃正则表达式
- 【决策树】熵及ID3算法Python示例
- android开发艺术探索事件分发总结
- 如何使用php中ftp函数上传文件以及解决php上传文件失败的方法
- 1.python开源——scrapy抓取豆瓣信息
- java中将PDF转图片格式
- springmvc4开发学习(第五讲)
- Js misc
- 深度拷贝和浅度拷贝
- Json&XML比较
- OpenSSL ECC 算法
- 在intellij idea中使用mybatis插件产生dao、model
- 为什么大多服务器用LinuxX系统
- 产生多路不同频率方波