pdf to image

package com.funindata.ocr.baidu.Utils;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.rendering.PDFRenderer;
import org.junit.jupiter.api.Test;

import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
/**
*
* @Author Zoey zheng
* @Description :pdf转换成图片工具类
* @Date 2019/2/25
**/
public class PdfToImage {
   public static void main(String[] args) {
       String filePath = "/Users/zhengyingjun/Library/2019.pdf";
       List<String> imageList = pdfToImagePath(filePath);
       Iterator<String> iterator = imageList.iterator();
       while (iterator.hasNext()) {

           System.out.println(iterator.next());
       }

   }

   public static List<String> pdfToImagePath(String filePath) {
       List<String> list = new ArrayList<>();
       String fileDirectory = filePath.substring(0, filePath.lastIndexOf("."));//获取去除后缀的文件路径

       String imagePath;
       File file = new File(filePath);
       try {
           File f = new File(fileDirectory);
           if (!f.exists()) {
               f.mkdir();
           }
           PDDocument doc = PDDocument.load(file);
           PDFRenderer renderer = new PDFRenderer(doc);
           int pageCount = doc.getNumberOfPages();
           for (int i = 0; i < pageCount; i++) {
               // 方式1,第二个参数是设置缩放比(即像素)
               // BufferedImage image = renderer.renderImageWithDPI(i, 296);
               // 方式2,第二个参数是设置缩放比(即像素)
               //第二个参数越大生成图片分辨率越高,转换时间也就越长
               BufferedImage image = renderer.renderImage(i, 1.25f);
               imagePath = fileDirectory + "/" + i + ".jpg";
               ImageIO.write(image, "PNG", new File(imagePath));
               list.add(imagePath);

           }
           System.out.println("图片位置: "+fileDirectory);
       } catch (IOException e) {
           e.printStackTrace();
       }
       return list;
   }
}
AP PDF to IMAGE Batch Converter 是一个有用的 pdf工具,该转换器能利用源 PDF 文档格式转换全功能的带文字,图片,图表等图像。它不需要任何软件支持,如 Adobe Acrobat,Acrobat Reader 等。 AP PDF to IMAGE Batch Converter 支持自定义输出结果页面。你可以选择转换几页文档,甚至自由转换文档页面,如 "1,2,3","2-100" 等,要获得更多信息,请参考页面范围设置。它能处理多个文件,只要确认设置好每个文件的输出目录,这样所有处理完的文件都会放置到它们相应的目录中。 PDF to Image 功能 * 迅速转换 PDF 文件到图像格式。 * 支持批量转换 PDF 到图像。 * 支持加密的 PD F文件。 * 支持自定义输出结果页面。 * 支持矢量图形转换到图像文件。 * 支持多个图像格式,如 'bmp','tiff','jpg','gif','png','pcx' 等。 * 支持生成多页面 tiff 文件。 * 支持生成任何分辨率的图像文件。 * 支持转换为 1 位,4 位,8 位,4 位灰度,8 位灰度和 24 位格式图像。 * 支持 tiff 图像的多种压缩,如 LZW,JPEG,PACKBITS,CCITT Group3,CCITT Group4,RLE 等。 * 支持拖放文件转换。 * 支持 Win98/ME/NT/2000/XP/2003/Vista 平台。 * 转换后可以自动显示图像文件。 * 允许你保留源文档的布局。 * 容易使用,单独的应用程序。 * 不需要 Adobe Acrobat 或 Adobe Acrobat Reader 的支持。 * 自动安装和配置。 * 兼容 Adobe Acrobat 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 。 命令行功能 PDF to Image 转换命令行程序也提供一个有正常转换 PDF to Image 功能的控制台。 * 包括 PDF to Image 的所有功能。 * 它可以像一个 DOS 命令行应用程序一样简单使用。 * 支持文件夹。 * 批量转换。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值