用java实现pdf转jpg图片的全代码,我这里附上参考代码。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用java实现pdf转jpg图片的全代码,我这里附上参考代码。相关的知识,希望对你有一定的参考价值。
下面的参考代码是我在网上找的、我想实现的功能是讲一个名字为test.pdf的文件通过java代码转为后缀名为.jpg的图片。跪求高手解答!
package pdf;
import java.awt.Image;
import java.awt.Rectangle;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;
import javax.swing.SwingUtilities;
import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGEncodeParam;
import com.sun.image.codec.jpeg.JPEGImageEncoder;
import com.sun.pdfview.PDFFile;
import com.sun.pdfview.PDFPage;
public class PdfToJpg
public static void setup() throws IOException
// 加载一个pdf从一个字节缓冲区
File file = new File("D:\\yangliu\\test.pdf");
RandomAccessFile raf = new RandomAccessFile(file, "r");
FileChannel channel = raf.getChannel();
ByteBuffer buf = channel.map(FileChannel.MapMode.READ_ONLY, 0,
channel.size());
PDFFile pdffile = new PDFFile(buf);
System.out.println("页数:" + pdffile.getNumPages());
String getPdfFilePath = System.getProperty("user.dir") + "\\pdfPicFile";
System.out.println("getPdfFilePath is :" + getPdfFilePath);
for (int i = 1; i < pdffile.getNumPages(); i++)
// 画第一页到一个图像
PDFPage page = pdffile.getPage(i);
// 获得宽度和高度的文件在默认的变焦
Rectangle rect = new Rectangle(0, 0, (int) page.getBBox()
.getWidth(), (int) page.getBBox().getHeight());
// 生成图像
Image img = page.getImage(rect.width, rect.height, rect, null,
true, true);
BufferedImage tag = new BufferedImage(rect.width, rect.height,
BufferedImage.TYPE_INT_RGB);
tag.getGraphics().drawImage(img, 0, 0, rect.width, rect.height,
null);
// 输出到文件流
FileOutputStream out = new FileOutputStream(getPdfFilePath + "\\"
+ i + ".jpg");
System.out.println("成功保存图片到:"+getPdfFilePath+"\\"+i+".jpg");
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(tag);
param.setQuality(1f, false); //1f是提高生成的图片质量
encoder.setJPEGEncodeParam(param);
encoder.encode(tag); // JPEG编码
out.close();
public static void main(final String[] args)
SwingUtilities.invokeLater(new Runnable()
public void run()
try
PdfToJpg.setup();
catch (IOException e)
e.printStackTrace();
);
JPG转PDF在线转换的方法
JPG转PDF怎样在线实现呢?工作中PDF文件是一种大家都熟知且常用的文件,因此很多时候我们都需要将各种文件转换成PDF格式进行传输。那么当我们需要将JPG图片转PDF文件的时候我们应该怎样进行实现呢?不用担心,下面小编就来给大家分享一个可以在线实现JPG转PDF的方法,来帮助大家解决这个问题。
步骤一:要实现上面两种文件之间的转换,我们是需要借助在线转换器来进行实现的,所以我们需要电脑浏览器搜索迅捷PDF在线转换器,通过借助它,来进行转换。
步骤二:通过搜索进入转换器页面后,在页面上方文档转换的功能栏中,选择图片转PDF的选项。
步骤三:图片转PDF的页面进来后,就可以通过页面中心点击选择文件的按钮将需要转换的图片添加进来了。
步骤四:图片添加进来后,在图片的下方可以对一些自定义选项进行修改,如-是否将所有图片合并为一个PDF文件-的选项。
步骤五:自定义选项修改好后,就可以开始对图片进行转换了,转换所需要的时间会在图片的下方呈现。
步骤六:图片转换好后,我们可以通过文件旁边的预览按钮对转换后的文件进行预览,也可以直接通过立即下载按钮,将转换后的PDF文件下载到电脑上。
在线实现JPG转PDF的方法,上面已经为大家分享过了,工作中大家再遇到JPG转PDF的问题就可以直接用这个方法来进行实现了。
以上是关于用java实现pdf转jpg图片的全代码,我这里附上参考代码。的主要内容,如果未能解决你的问题,请参考以下文章