【问题标题】:How to render part of a PDF file as an image using PDFBox?如何使用 PDFBox 将 PDF 文件的一部分呈现为图像?
【发布时间】:2018-07-03 00:09:18
【问题描述】:

PDFBox 提供渲染整个页面的功能,但无法仅渲染页面的特定矩形。

此代码对我有用。但如上所述,它渲染整个页面,我需要一种方法来渲染 pdf 文件的一小部分区域:

    File file = new File("package.pdf"); 
    PDDocument document = PDDocument.load(file);
    PDFRenderer renderer = new PDFRenderer(document);
    BufferedImage image = renderer.renderImageWithDPI(0, 400);
    ImageIO.write(image, "PNG", new File("C:/package1.png"));
    document.close();

我会很高兴有一个解决方案,因为我已经好几个小时没有找到解决方案了

【问题讨论】:

  • 您是否尝试通过将裁剪框设置为相关矩形来将页面限制为相关矩形?
  • 或者您可以渲染到图形设备并在调用渲染之前设置剪切路径。
  • 为什么这个问题被标记为 iText 问题?
  • @mkl 谢谢你,裁剪框是我需要的关键字

标签: java pdf render pdfbox


【解决方案1】:

我自己找到了解决方案。 CropBox 是我不知道的决定性关键字。

    File file = new File("package.pdf"); 
    PDDocument document = PDDocument.load(file);
    PDPage page = document.getPage(0);
    page.setCropBox(new PDRectangle(133f, 150f, 100f, 100f)); // Here you draw a rectangle around the area you want to specify
    PDFRenderer renderer = new PDFRenderer(document);
    BufferedImage image = renderer.renderImageWithDPI(0, 400);
    ImageIO.write(image, "PNG", new File("C:/fatihabi.png"));
    document.close();

【讨论】:

    猜你喜欢
    • 2016-07-02
    • 2014-06-13
    • 2018-03-22
    • 1970-01-01
    • 2017-02-18
    • 1970-01-01
    • 2022-04-29
    • 2017-01-10
    相关资源
    最近更新 更多