如何在 Java 中解析 PDF(開發人員教程)
這篇文章將使用IronPDF程式庫以高效的方法在Java中建立一個PDF解析器。
IronPDF - Java PDF程式庫
IronPDF for Java 是一個Java PDF程式庫,它能夠輕鬆且準確地建立、閱讀和操作PDF文件。 它建立在IronPDF for .NET的成功之上,並提供跨不同平台的高效功能。 IronPDF for Java利用IronPdfEngine,該引擎速度快且為性能優化。
使用IronPDF,您可以從PDF文件提取文字和圖像,並且還可以從包括HTML字串、文件、URL和圖像在內的各種來源建立PDF。 此外,您還可以輕鬆地新增新內容,使用IronPDF插入簽名,並將元資料嵌入PDF文件中。 IronPDF專為Java 8+、Scala和Kotlin設計,並相容於Windows、Linux和Cloud平台。
如何在Java中解析PDF文件
- 下載Java程式庫以解析PDF文件
- 使用
fromFile方法載入現有的PDF文件 - 使用
extractAllText方法從解析的PDF中提取所有文字 - 使用
renderUrlAsPdf方法從URL渲染PDF - 使用
extractAllImages方法從解析的PDF中提取圖像
在Java程式中使用IronPDF建立PDF文件解析器
先決條件
要在Java中製作PDF解析專案,您將需要以下工具:
- Java IDE:您可以使用任何支援Java的IDE。目前有多種Java IDE可供開發使用。 這裡這篇教程將使用IntelliJ IDE。 您可以使用NetBeans、Eclipse等。
- Maven專案:Maven是一個依賴管理工具,可控制Java專案。 Java的Maven可以從Maven官方網站下載。 IntelliJ Java IDE內建支援Maven。
-
IronPDF - 您可以透過多種方式下載和安裝IronPDF for Java。
-
在Maven專案中的
pom.xml文件中新增IronPDF依賴。<dependency> <groupId>com.ironsoftware</groupId> <artifactId>ironpdf</artifactId> <version>[LATEST_VERSION]</version> </dependency><dependency> <groupId>com.ironsoftware</groupId> <artifactId>ironpdf</artifactId> <version>[LATEST_VERSION]</version> </dependency>XML - 造訪Maven儲存庫網站以獲取最新的Java IronPDF包。
- 從Iron Software 官方下載頁面直接下載。
- 在您的簡單Java應用程式中手動安裝IronPDF JAR文件。
-
-
Slf4j-Simple:此依賴性也需要來將內容印到現有文件。 它可以使用IntelliJ中的Maven依賴管理器新增,也可以直接從Maven網站下載。將以下依賴新增到
pom.xml文件中:<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>2.0.5</version> </dependency><dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>2.0.5</version> </dependency>XML
新增必要的導入
安裝所有先決條件後,第一步是導入必要的IronPDF包以處理PDF文件。 在Main.java文件的頂部新增以下程式碼:
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.Paths;
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.Paths;
授權金鑰
IronPDF中的某些方法需要授權才能使用。 您可以購買授權或在免費試用中免費試用IronPDF。 您可以按以下方式設置金鑰:
License.setLicenseKey("YOUR-KEY");
License.setLicenseKey("YOUR-KEY");
步驟1:解析現有的PDF文件
為了解析現有文件以提取內容,使用PdfDocument類。 它的靜態[fromFile](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#fromFile(java.nio.file.Path)方法用於在Java程式中從特定路徑含有特定文件名解析PDF文件。 程式碼如下:
PdfDocument parsedDocument = PdfDocument.fromFile(Paths.get("sample.pdf"));
PdfDocument parsedDocument = PdfDocument.fromFile(Paths.get("sample.pdf"));
Parsed document
步驟2:從解析的PDF文件提取文字資料
IronPDF for Java提供了一種簡單方法來從PDF文件中提取文字。 下面的程式碼片段是用來從PDF文件中提取文字的程式碼:
String extractedText = parsedDocument.extractAllText();
String extractedText = parsedDocument.extractAllText();
上述程式碼生成的輸出如下:
輸出
步驟3:從URL或HTML字串提取文字資料
IronPDF for Java的功能不僅限於現有的PDF,它還可以建立並解析新的文件以提取內容。 這裡這篇教程將建立一個從URL生成的PDF文件並從中提取內容。 以下範例展示了如何完成此任務:
public class Main {
public static void main(String[] args) throws IOException {
License.setLicenseKey("YOUR-KEY");
PdfDocument parsedDocument = PdfDocument.renderUrlAsPdf("https://ironpdf.com/java/");
String extractedText = parsedDocument.extractAllText();
System.out.println("Text Extracted from URL:\n" + extractedText);
}
}
public class Main {
public static void main(String[] args) throws IOException {
License.setLicenseKey("YOUR-KEY");
PdfDocument parsedDocument = PdfDocument.renderUrlAsPdf("https://ironpdf.com/java/");
String extractedText = parsedDocument.extractAllText();
System.out.println("Text Extracted from URL:\n" + extractedText);
}
}
輸出如下:
輸出
步驟4:從解析的PDF文件提取圖片
IronPDF還提供了一種簡便的方法提取所有解析文件中的圖片。 這裡教程將使用前面的範例來看看如何從PDF文件中輕鬆提取圖片。
import com.ironsoftware.ironpdf.*;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;
public class Main {
public static void main(String[] args) throws IOException {
License.setLicenseKey("YOUR-KEY");
PdfDocument parsedDocument = PdfDocument.renderUrlAsPdf("https://ironpdf.com/java/");
try {
List<BufferedImage> images = parsedDocument.extractAllImages();
System.out.println("Number of images extracted from the website: " + images.size());
int i = 0;
for (BufferedImage image : images) {
ImageIO.write(image, "PNG", Files.newOutputStream(Paths.get("assets/extracted_" + ++i + ".png")));
}
} catch (Exception exception) {
System.out.println("Failed to extract images from the website");
exception.printStackTrace();
}
}
}
import com.ironsoftware.ironpdf.*;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;
public class Main {
public static void main(String[] args) throws IOException {
License.setLicenseKey("YOUR-KEY");
PdfDocument parsedDocument = PdfDocument.renderUrlAsPdf("https://ironpdf.com/java/");
try {
List<BufferedImage> images = parsedDocument.extractAllImages();
System.out.println("Number of images extracted from the website: " + images.size());
int i = 0;
for (BufferedImage image : images) {
ImageIO.write(image, "PNG", Files.newOutputStream(Paths.get("assets/extracted_" + ++i + ".png")));
}
} catch (Exception exception) {
System.out.println("Failed to extract images from the website");
exception.printStackTrace();
}
}
}
方法BufferedImages列表。 然後每個ImageIO.write儲存為PNG圖片在一個位置。 解析的PDF文件中有34張圖片,每張圖片均完美提取。
Extracted images
步驟5:從PDF文件中的表格提取資料
從PDF文件中的表格界限提取內容僅需一行程式碼即可完成,使用[extractAllText方法](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#extractAllText()。 下面的程式碼片段演示了如何從PDF文件中的表格提取文字:
Table in PDF
PdfDocument parsedDocument = PdfDocument.fromFile(Paths.get("table.pdf"));
String extractedText = parsedDocument.extractAllText();
System.out.println(extractedText);
PdfDocument parsedDocument = PdfDocument.fromFile(Paths.get("table.pdf"));
String extractedText = parsedDocument.extractAllText();
System.out.println(extractedText);
輸出如下:
輸出
結論
這篇文章展示了如何解析現有的PDF文件或從URL建立新的PDF解析文件,以使用IronPDF從中提取資料。 打開文件後,它可以從PDF中提取制表資料、圖像和文字,並可以將提取的文字新增到文字文件中以便日後使用。
有關如何在Java中程式化處理PDF文件的更多詳細資訊,請造訪這些PDF文件建立範例。
IronPDF for Java程式庫可免費用於開發目的,並提供免費試用。 然而,商業使用可以透過Iron Software獲取授權,價格從$999起。
常見問題
如何在Java中建立一個PDF解析器?
要在Java中建立一個PDF解析器,您可以使用IronPDF程式庫。首先下載並安裝IronPDF,然後使用fromFile方法載入您的PDF文件。您可以分別使用extractAllText和extractAllImages方法提取文字和圖像。
IronPDF可以與Java 8+一起使用嗎?
可以,IronPDF與Java 8以及更高版本相容,還支持Scala和Kotlin。它支持包括Windows、Linux和雲環境的多個平台。
使用IronPDF在Java中解析PDF的關鍵步驟是什麼?
關鍵步驟包括建立Maven專案,新增IronPDF依賴,使用fromFile載入PDF文件,使用extractAllText提取文字,以及使用extractAllImages提取圖像。
如何在Java中將URL轉換為PDF?
您可以使用IronPDF的renderUrlAsPdf方法將URL轉換為PDF。這允許您有效地將網頁呈現為PDF文件。
IronPDF適合用於基於雲的Java應用程式嗎?
可以,IronPDF設計得非常靈活,支持基於雲的環境,適合開發需要在雲中實現PDF功能的Java應用程式。
如何管理Java PDF解析專案的依賴性?
在Java專案中管理依賴性可以使用Maven。將IronPDF程式庫新增到您的專案的pom.xml文件中以將其作為依賴項包含進來。
IronPDF有什麼授權選項?
IronPDF提供了一個供開發用途的免費試用版。然而,商業用途需要一份授權。這確保了對所有功能及優先支援的存取。





