从PDF中删除页面的性能不如预期

  • 本文关键字:性能 PDF 删除 java pdf pdfbox
  • 更新时间 :
  • 英文 :


我已经写下了Java代码:

PDDocument document=PDDocument.load(file);
int noOfPages= document.getNumberOfPages();
System.out.println(noOfPages);
boolean bq=document.removePage(2);
System.out.println(bq);
boolean bq1=document.removePage(3);
System.out.println(bq1);
boolean bq2=document.removePage(4);
System.out.println(bq2);

并获取输出为:

5
true
true
false

我不明白为什么 page 带有索引 4不删除

当我仅使用

boolean bq2=document.removePage(4);

它工作正常,页面从PDF删除。

您有5页。这些具有数字0 1 2 3 4.删除第2页后,您有第2页0 1 2 3.删除第3页后,您有第1页2.因此您将无法删除第4页,因为它没有存在。

一个解决方案是从最后一页#开始。

另一种解决方案是在进行删除之前检索页面以获取PDPAGE对象,并将其用作删除页的参数。

最新更新