Sách điện tử có nhiều định dạng khác nhau rất phổ biến trong sử dụng hàng ngày. Sách điện tử có thể chứa văn bản cũng như hình ảnh. Nếu bạn muốn sử dụng hình ảnh của bất kỳ Sách điện tử nào ở nơi khác, bạn có thể lấy những hình ảnh này dễ dàng được trích xuất theo chương trình trong ứng dụng Java của mình. Trong bài viết này, bạn sẽ học cách tự động hóa, cách trích xuất hình ảnh từ các tệp sách điện tử như EPUB, PDF, FB2, CHM trong Java.

Các chủ đề sau đây sẽ được đề cập dưới đây:

API Java để trích xuất hình ảnh từ sách điện tử

GroupDocs.Parser for Java API là API tự động hóa giàu tính năng để trích xuất hình ảnh từ sách điện tử và tài liệu trong Java. Ngoài ra, API hỗ trợ phân tích cú pháp và trích xuất hình ảnh, văn bản và siêu dữ liệu từ tài liệu soạn thảo văn bản, bảng tính, PDF, bản trình bày, email, tệp lưu trữ ZIP và nhiều định dạng tài liệu được hỗ trợ khác.

Tải xuống và định cấu hình

Lấy tệp JAR từ phần tải xuống hoặc chỉ cần thêm cấu hình pom.xml sau vào các ứng dụng Java dựa trên Maven của bạn để thử các ví dụ được đề cập bên dưới. Để biết chi tiết, bạn có thể truy cập Tham khảo API.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
	<groupId>com.groupdocs</groupId>
	<artifactId>groupdocs-parser</artifactId>
	<version>21.2</version> 
</dependency>

Trích xuất hình ảnh từ Sách điện tử EPUB trong Java

Hãy bắt đầu với Sách điện tử EPUB để phân tích cú pháp cho hình ảnh. Các bước sau đây phân tích cú pháp Sách điện tử EPUB và trích xuất tất cả hình ảnh từ sách này bằng mã Java.

  • Tạo đối tượng lớp Parser với Sách điện tử.
  • Sử dụng phương pháp getImages để trích xuất tất cả hình ảnh của Sách điện tử EPUB.
  • Duyệt qua các hình ảnh được trích xuất và lưu chúng vào đĩa.
Sách điện tử EPUB có hình ảnh

Sách điện tử EPUB từ Adobe [Thư viện sách điện tử mẫu][11]

Mã Java sau phân tích cú pháp Sách điện tử EPUB và lưu từng hình ảnh của Sách điện tử vào đĩa.

// Phân tích sách điện tử để trích xuất hình ảnh từ các tệp PDF, EPUB, FB2, CHM trong Java và lưu vào đĩa.
Parser parser = new Parser("ebook.epub");
// Trích xuất hình ảnh từ Sách điện tử và lưu ở định dạng JPEG.
Iterable<PageImageArea> images = parser.getImages();
ImageOptions options = new ImageOptions(ImageFormat.Jpeg);
int imageNumber = 0;
// Lặp lại các hình ảnh được trích xuất
for (PageImageArea image : images) {
    image.save(Constants.getOutputFilePath(String.format("%d.jpeg", imageNumber)), options);
    imageNumber++;
}
Hình ảnh được trích xuất từ Sách điện tử EPUB

Do đó, tất cả các hình ảnh sẽ được lưu vào vị trí được cung cấp. Đây là một trong những hình ảnh được hiển thị dưới dạng mẫu.

Các hình ảnh có thể được lưu ở bất kỳ định dạng tệp hình ảnh nào sau đây:

  • JPG
  • PNG
  • WEB
  • GIF
  • BMP

Trích xuất hình ảnh từ sách điện tử PDF, FB2, CHM trong Java

Ngoài định dạng EPUB, nếu bạn có Sách điện tử ở định dạng PDF, FB2, CHM hoặc một số định dạng khác, bạn có thể trích xuất hình ảnh của chúng theo cách tương tự. Chỉ cần chuyển Sách điện tử của bạn tới hàm tạo Trình phân tích cú pháp trong khi tạo đối tượng. Sau đó, phương thức getImages sẽ trích xuất hình ảnh từ Sách điện tử được cung cấp của bạn bằng cùng một mã Java.

// Provide different eBook formats to the Parser constructor to extract the images.
// Parser parser = new Parser("ebook.epub");
Parser parser = new Parser("ebook.pdf");
// Parser parser = new Parser("ebook.fb2");
// Parser parser = new Parser("ebook.chm");

Iterable<PageImageArea> images = parser.getImages();

Sự kết luận

Trong bài viết này, bạn đã học cách lập trình lấy tất cả các hình ảnh từ sách điện tử PDF, EPUB, FB2, CHM trong các ứng dụng Java của mình. Giờ đây, bạn có thể thử xây dựng ứng dụng Java trích xuất hình ảnh của riêng mình bằng GroupDocs.Parser for Java API.

Để biết thêm về API, bạn có thể truy cập tài liệu hoặc các ví dụ mã nguồn mở tại GitHub. Đối với bất kỳ vấn đề nào khác, bạn có thể liên hệ với bộ phận hỗ trợ nhanh tại diễn đàn.

Xem thêm