eBooks ในรูปแบบต่างๆ มีอยู่ทั่วไปในชีวิตประจำวัน eBook สามารถมีข้อความและรูปภาพได้ หากคุณต้องการใช้อิมเมจของ eBook ที่อื่น คุณสามารถดึงอิมเมจเหล่านี้โดยทางโปรแกรมได้อย่างง่ายดายภายในแอปพลิเคชัน Java ของคุณ ในบทความนี้ คุณจะได้เรียนรู้วิธีทำให้อัตโนมัติ วิธีแยกรูปภาพจากไฟล์ eBook เช่น EPUB, PDF, FB2, CHM ใน Java

หัวข้อต่อไปนี้จะครอบคลุมด้านล่าง:

Java API เพื่อแยกรูปภาพจาก eBooks

GroupDocs.Parser for Java API เป็น API การทำงานอัตโนมัติที่มีคุณลักษณะหลากหลายสำหรับการแยกรูปภาพจาก eBooks และเอกสารในภาษาจาวา นอกจากนี้ API ยังรองรับการแยกวิเคราะห์และแยกรูปภาพ ข้อความ และข้อมูลเมตาจากเอกสารประมวลผลคำ สเปรดชีต PDF งานนำเสนอ อีเมล ไฟล์ ZIP และอื่นๆ อีกมากมาย รูปแบบเอกสารที่รองรับ

ดาวน์โหลดและกำหนดค่า

รับไฟล์ JAR จากส่วน ดาวน์โหลด หรือเพียงเพิ่มการกำหนดค่า pom.xml ต่อไปนี้ในแอปพลิเคชัน Java ที่ใช้ Maven เพื่อลองใช้ตัวอย่างด้านล่าง สำหรับรายละเอียด คุณสามารถไปที่ ข้อมูลอ้างอิง 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>

แยกรูปภาพจาก EPUB eBook ใน Java

เริ่มจาก EPUB eBook เพื่อแยกวิเคราะห์สำหรับรูปภาพ ขั้นตอนต่อไปนี้จะแยกวิเคราะห์ eBook ของ EPUB และดึงภาพทั้งหมดออกมาโดยใช้รหัส Java

  • สร้างวัตถุคลาส Parser ด้วย eBook
  • ใช้เมธอด getImages เพื่อแยกรูปภาพทั้งหมดของ EPUB eBook
  • สำรวจรูปภาพที่แยกออกมาแล้วบันทึกลงในดิสก์
EPUB eBook พร้อมรูปภาพ

EPUB eBook จาก Adobe [Sample eBook Library][11]

รหัส Java ต่อไปนี้แยกวิเคราะห์ EPUB eBook และบันทึกภาพของ eBook ทีละภาพลงในดิสก์

// แยก eBooks เพื่อแยกรูปภาพจากไฟล์ PDF, EPUB, FB2, CHM ใน Java และบันทึกลงดิสก์
Parser parser = new Parser("ebook.epub");
// แยกรูปภาพจาก eBook และบันทึกในรูปแบบ JPEG
Iterable<PageImageArea> images = parser.getImages();
ImageOptions options = new ImageOptions(ImageFormat.Jpeg);
int imageNumber = 0;
// วนซ้ำภาพที่แยกออกมา
for (PageImageArea image : images) {
    image.save(Constants.getOutputFilePath(String.format("%d.jpeg", imageNumber)), options);
    imageNumber++;
}
ดึงรูปภาพจาก EPUB eBook

ดังนั้น ภาพทั้งหมดจะถูกบันทึกไปยังตำแหน่งที่จัดเตรียมไว้ นี่คือหนึ่งในภาพที่แสดงเป็นตัวอย่าง

สามารถบันทึกรูปภาพในรูปแบบไฟล์รูปภาพต่อไปนี้:

  • JPG
  • PNG
  • เว็บ
  • กิ๊ฟ
  • ขสมก

แยกรูปภาพจาก PDF, FB2, CHM eBooks ใน Java

นอกจากรูปแบบ EPUB แล้ว หากคุณมี eBook ในรูปแบบ PDF, FB2, CHM หรือรูปแบบอื่นๆ คุณสามารถแยกรูปภาพได้ด้วยวิธีเดียวกัน เพียงส่ง eBook ของคุณไปยังตัวสร้าง Parser ในขณะที่สร้างวัตถุ หลังจากนั้น เมธอด getImages จะแยกรูปภาพจาก eBook ที่คุณให้มาโดยใช้โค้ด 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();

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีรับรูปภาพทั้งหมดจาก PDF, EPUB, FB2, CHM eBooks โดยทางโปรแกรมภายในแอปพลิเคชัน Java ของคุณ ตอนนี้คุณสามารถลองสร้างแอปพลิเคชัน Java ของตัวแยกรูปภาพของคุณเองโดยใช้ GroupDocs.Parser for Java API

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ API คุณสามารถไปที่ เอกสารประกอบ หรือตัวอย่างโอเพ่นซอร์สได้ที่ GitHub สำหรับปัญหาเพิ่มเติม คุณสามารถติดต่อฝ่ายสนับสนุนด่วนได้ที่ ฟอรัม

ดูสิ่งนี้ด้วย