使用 java 将 PDF 转为图片

Pdf to image using java

你好程序员朋友们。我是 java 的新手,我需要从 pdf 的特定部分创建图像。

目前,我正在使用 pdfbox。

这是我从 pdf 创建图像的代码(它可以工作,但它会创建整个 pdf 页面的图像):

PDDocument document = PDDocument.load(new File(PDFFILE));

            PDFRenderer pdfRenderer = new PDFRenderer(document);
            for (int page = 0; page < document.getNumberOfPages(); ++page)
            {

                BufferedImage bim = pdfRenderer.renderImageWithDPI(page, 300, ImageType.RGB);

                ImageIOUtil.writeImage(bim, path + "-" + (page+1) + ".png", 300);
            }
            document.close();

问题:

我需要在特定位置(如矩形)基于 pdf 创建图像。

有没有办法使用 pdfbox 做到这一点,或者是否有其他图书馆可以做到这一点?我尝试搜索但找不到解决方案。
谢谢。

这是解决方案:感谢 mkl 的想法

    private void PdfToImage(String PDFFILE){
            try{

                PDDocument document = PDDocument.load(new File(PDFFILE));
                PDPage pd;

                PDFRenderer pdfRenderer = new PDFRenderer(document);
                for (int page = 0; page < document.getNumberOfPages(); ++page)
                {


                  pd = document.getPage(page);
                  pd.setCropBox(new PDRectangle(100, 100,100,100));
                  BufferedImage bim = pdfRenderer.renderImageWithDPI(page, 300, ImageType.RGB);
                  ImageIOUtil.writeImage(bim, outputpath + (page+1) + ".png", 300);

                }
                document.close();
            }catch (Exception ex){
                JOptionPane.showMessageDialog(null, ex.getStackTrace());
            }
        }