PDFBox - Xóa trang
Bây giờ chúng ta hãy tìm hiểu cách xóa các trang khỏi tài liệu PDF.
Xóa các trang khỏi tài liệu hiện có
Bạn có thể xóa một trang khỏi tài liệu PDF hiện có bằng cách sử dụng removePage() phương pháp của PDDocument lớp học.
Bước 1: Tải tài liệu PDF hiện có
Tải tài liệu PDF hiện có bằng phương pháp tĩnh load() sau đó PDDocumentlớp học. Phương thức này chấp nhận một đối tượng tệp làm tham số, vì đây là một phương thức tĩnh nên bạn có thể gọi nó bằng cách sử dụng tên lớp như được hiển thị bên dưới.
File file = new File("path of the document")
PDDocument.load(file);
Bước 2: Liệt kê số lượng trang
Bạn có thể liệt kê số lượng trang tồn tại trong tài liệu PDF bằng cách sử dụng getNumberOfPages() như hình dưới đây.
int noOfPages= document.getNumberOfPages();
System.out.print(noOfPages);
Bước 3: Xóa trang
Bạn có thể xóa một trang khỏi tài liệu PDF bằng cách sử dụng removePage() phương pháp của PDDocumentlớp học. Đối với phương pháp này, bạn cần chuyển chỉ mục của trang sẽ bị xóa.
Trong khi chỉ định chỉ mục cho các trang trong tài liệu PDF, hãy nhớ rằng lập chỉ mục của các trang này bắt đầu từ 0, tức là nếu bạn muốn xóa trang thứ nhất thì giá trị chỉ mục cần phải bằng 0.
document.removePage(2);
Bước 4: Lưu tài liệu
Sau khi xóa trang, hãy lưu tài liệu PDF bằng save() phương pháp của PDDocument lớp như được hiển thị trong khối mã sau.
document.save("Path");
Bước 5: Đóng tài liệu
Cuối cùng, đóng tài liệu bằng cách sử dụng close() phương pháp của PDDocument lớp như hình bên dưới.
document.close();
Thí dụ
Giả sử, chúng ta có một tài liệu PDF có tên sample.pdf và nó chứa ba trang trống như hình dưới đây.
Ví dụ này trình bày cách xóa các trang khỏi tài liệu PDF hiện có. Tại đây, chúng tôi sẽ tải tài liệu PDF được chỉ định ở trên có tênsample.pdf, xóa một trang khỏi nó và lưu nó trong đường dẫn C:/PdfBox_Examples/. Lưu mã này trong một tệp có tênRemoving_pages.java.
import java.io.File;
import java.io.IOException;
import org.apache.pdfbox.pdmodel.PDDocument;
public class RemovingPages {
public static void main(String args[]) throws IOException {
//Loading an existing document
File file = new File("C:/PdfBox_Examples/sample.pdf");
PDDocument document = PDDocument.load(file);
//Listing the number of existing pages
int noOfPages= document.getNumberOfPages();
System.out.print(noOfPages);
//Removing the pages
document.removePage(2);
System.out.println("page removed");
//Saving the document
document.save("C:/PdfBox_Examples/sample.pdf");
//Closing the document
document.close();
}
}
Biên dịch và thực thi tệp Java đã lưu từ dấu nhắc lệnh bằng các lệnh sau.
javac RemovingPages.java
java RemovingPages
Khi thực hiện, chương trình trên sẽ tạo một tài liệu PDF với các trang trống hiển thị thông báo sau.
3
page removed
Nếu bạn xác minh đường dẫn được chỉ định, bạn có thể thấy rằng trang yêu cầu đã bị xóa và chỉ còn lại hai trang trong tài liệu như được hiển thị bên dưới.