我找到了一个解决方案,但renderer.renderImageWithDPI(pageNumber,300)方法需要 page number as method argument ,它可以 convert only one page of PDF at a time . 但我需要以字节数组的形式 full PDf into JPG .
import java.awt.image.BufferedImage;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import javax.imageio.ImageIO;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.rendering.PDFRenderer;
public class DocumentService {
public byte[] convertPDFtoImage(byte[] bytesPDF) {
InputStream targetStream = new ByteArrayInputStream(bytesPDF);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
PDDocument document = null;
try {
document = PDDocument.load(targetStream);
PDFRenderer renderer