我编写了以下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
我无法理解为什么 4
的页面未被删除。
当我只使用
时boolean bq2=document.removePage(4);
工作正常,页面已从PDF中删除。
答案 0 :(得分:0)
你有5页。它们的编号为0 1 2 3 4.删除第2页后,您有0页1 3 3.删除第3页后,您有0 1 2页。因此您无法删除第4页,因为它没有& #39; t存在。
解决方案是从最后一页#。
开始另一种解决方案是在执行删除之前检索页面以获取PDPage对象,并将它们用作removePage的参数。