![](https://products-qa.fileformat.com/vi/pdf/java/apache-pdfbox/header-image.png)
Apache PDFBox
API Java để xử lý tài liệu PDF
Thư viện Java mã nguồn mở để tạo, in và chia nhỏ hoặc hợp nhất các tài liệu PDF bên trong các ứng dụng Java.
Apache PDFBox là một thư viện thuần Java mã nguồn mở để làm việc với các tài liệu PDF. Sử dụng thư viện này, các nhà phát triển Java có thể phát triển các chương trình Java để tạo các tài liệu PDF mới và thao tác các tài liệu PDF hiện có một cách dễ dàng. Nó cũng cho phép các nhà phát triển đọc và trích xuất nội dung từ các tài liệu PDF. Ngoài ra, PDFBox cũng bao gồm một tiện ích dòng lệnh để thực hiện các thao tác khác nhau đối với tài liệu PDF bằng cách sử dụng tệp Jar có sẵn.
Định dạng Tài liệu Di động (PDF) là một định dạng tệp giúp trình bày dữ liệu theo cách độc lập với phần mềm Ứng dụng, phần cứng và hệ điều hành. Apache PDFBox hỗ trợ một số tính năng nâng cao, chẳng hạn như tạo, kết xuất, in, chia tách, hợp nhất, thay đổi, xác minh và trích xuất văn bản và siêu dữ liệu của tệp PDF.
Bắt đầu với Apache PDFBox
Trước hết, bạn cần tải xuống bản phát hành mới nhất từ trang tải xuống PDFBox. Để xây dựng PDFBox thành công, bạn cần cài đặt Java 7 trở lên và Maven 3. Sử dụng lệnh xây dựng sau
Lệnh cài đặt
mvn clean instal
Lệnh sẽ biên dịch các nguồn Java và đóng gói các lớp nhị phân thành các gói jar theo mặc định.
API Java để tạo và sửa đổi tài liệu PDF mới
Apache PDFBox cho phép các lập trình viên tạo một tài liệu PDF mới từ đầu. Sau khi tạo tài liệu, các nhà phát triển có thể lưu tài liệu vào vị trí mong muốn. PDF là một trong những định dạng tệp được sử dụng phổ biến nhất hiện nay. Tài liệu PDF tương thích trên nhiều nền tảng khác nhau và đại diện cho một tài liệu độc lập với phần cứng, hệ điều hành và phần mềm ứng dụng được sử dụng để tạo ra nó. PDFBox cũng tạo điều kiện cho các nhà phát triển sửa đổi các tài liệu PDF hiện có. Các nhà phát triển có thể thêm các trang mới cũng như văn bản vào các tài liệu trang hiện có.
Tạo tài liệu PDF - Java
// Create a new PDF document
PDDocument document = new PDDocument();
// Save document
document.save("fileformat.pdf");
// Close document
document.close();
Tách và Hợp nhất Tài liệu PDF bằng Thư viện Java
Apache PDFBox cung cấp khả năng hợp nhất nhiều tài liệu PDF thành một tài liệu PDF duy nhất. Để hợp nhất nhiều tài liệu, trước tiên bạn cần tải các tài liệu PDF hiện có và sau đó đặt đường dẫn đến tệp đích. Sau đó, các nhà phát triển có thể thêm tất cả các tệp PDF nguồn theo trình tự mà họ muốn tìm thấy trong tệp PDF được hợp nhất cuối cùng. Chúng tôi có thể chia tài liệu PDF đã cho thành nhiều tệp PDF. Lớp Splitter này được sử dụng để chia tài liệu PDF đã cho thành một số tài liệu riêng biệt khác.
Hợp nhất tài liệu PDF - Java
// Initialize PDFMergerUtility object
PDFMergerUtility pdfMergerUtility = new PDFMergerUtility();
// Set output file path
pdfMergerUtility.setDestinationFileName("merged.pdf");
// Add source documents
pdfMergerUtility.addSource(new File("document1.pdf"));
pdfMergerUtility.addSource(new File("document2.pdf"));
// Merger documents
pdfMergerUtility.mergeDocuments(MemoryUsageSetting.setupMainMemoryOnly());
Thêm và trích xuất hình ảnh thành tài liệu PDF bên trong ứng dụng Java
Apache PDFBox tạo điều kiện cho các nhà phát triển Java chèn hình ảnh vào một tài liệu PDF hiện có. Hình ảnh luôn thêm giá trị thực cho phần nội dung. Hình ảnh giúp chúng ta học hỏi, thu hút sự chú ý, giải thích các khái niệm và truyền cảm hứng. PDFBox cung cấp một thư viện để chèn hình ảnh vào tài liệu PDF. Thư viện này sử dụng chương trình Java để chèn hình ảnh trong tài liệu PDF. API cũng cho phép các nhà phát triển trích xuất hình ảnh từ tài liệu PDF hiện có và lưu trữ nó trên đĩa cục bộ.
Thêm hình ảnh trong PDF - Java
// Create a new PDF document
PDDocument document = new PDDocument();
// Create a new page
PDPage page = new PDPage();
// Add page
document.addPage(page);
// Initialize PDImageXObject object
PDImageXObject pdImage = PDImageXObject.createFromFile("logo.png",document);
// Initialize PDPageContentStream object
PDPageContentStream contents = new PDPageContentStream(document, page);
// Drawing image
contents.drawImage(pdImage, 70, 250);
// Close contents
contents.close();
// save document
document.save("image.pdf");
In tài liệu PDF theo nhiều cách khác nhau bằng cách sử dụng Thư viện Java
Apache PDFBox cho phép các nhà phát triển Java in tài liệu PDF bằng API in Java tiêu chuẩn. Nó cho phép các nhà phát triển in tài liệu PDF theo nhiều cách khác nhau. Các nhà phát triển hiện có thể in tài liệu ở kích thước thực của nó, đây là cách được khuyến nghị để in. Nó hỗ trợ in với hộp thoại xem trước bản in cũng như các thuộc tính tùy chỉnh. Các nhà phát triển cũng có thể in tài liệu PDF bằng kích thước trang tùy chỉnh và lề tùy chỉnh.
In tệp PDF qua API Java
import java.awt.print.PrinterException;
import java.io.IOException;
import org.apache.pdfbox.pdmodel.PDDocument;
public class Print {
public static void main(String[] args) throws IOException, PrinterException
{
PDDocument pdf=PDDocument.load("d:\\filename.pdf");
pdf.print();
}
}