我已经写下了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对象,并将其用作删除页的参数。