各種格式的電子書在日常使用中非常普遍。電子書可以包含文本和圖像。如果您想在其他地方使用任何電子書的圖像,您可以在 Java 應用程序中以編程方式輕鬆提取這些圖像。在本文中,您將學習如何使用 Java 自動從 EPUB、PDF、FB2、CHM 等電子書文件中提取圖像。
下面將涵蓋以下主題:
從電子書中提取圖像的 Java API
GroupDocs.Parser for Java API 是一種功能豐富的自動化 API,用於從 Java 電子書和文檔中提取圖像。除此之外,API 還支持從文字處理文檔、電子表格、PDF、演示文稿、電子郵件、ZIP 存檔和許多其他支持的文檔格式 中解析和提取圖像、文本和元數據。
下載和配置
從 downloads 部分獲取 JAR 文件,或者在基於 Maven 的 Java 應用程序中添加以下 pom.xml 配置以嘗試下面提到的示例。有關詳細信息,您可以訪問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>
用 Java 從 EPUB 電子書中提取圖像
讓我們從 EPUB 電子書開始解析它的圖像。以下步驟解析 EPUB 電子書並使用 Java 代碼從中提取所有圖像。
以下Java代碼解析EPUB電子書,並將電子書的圖片一張一張保存到磁盤中。
// 解析電子書以從 Java 中的 PDF、EPUB、FB2、CHM 文件中提取圖像並保存到磁盤。
Parser parser = new Parser("ebook.epub");
// 從電子書中提取圖像並以 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++;
}
結果,所有圖像都將保存到提供的位置。這是作為示例顯示的圖像之一。
圖像可以保存為以下任何一種圖像文件格式:
- 圖片
- PNG
- WEBP
- 動圖
- 骨形態發生蛋白
用 Java 從 PDF、FB2、CHM 電子書中提取圖像
除了 EPUB 格式,如果你的電子書是 PDF、FB2、CHM 或其他格式,你可以用同樣的方法提取它們的圖像。只需在創建對象時將您的電子書傳遞給 Parser 構造函數。之後,getImages 方法將使用相同的 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();
結論
在本文中,您學習瞭如何在 Java 應用程序中以編程方式從 PDF、EPUB、FB2、CHM 電子書中獲取所有圖像。現在您可以嘗試使用 GroupDocs.Parser for Java API 構建您自己的圖像提取器 Java 應用程序。
有關 API 的更多信息,您可以訪問 文檔 或 GitHub 上的開源示例。對於任何進一步的問題,您可以聯繫 論壇 上的快速支持。