轉帖|使用教程|編輯:何躍|2021-12-10 11:27:31.860|閱讀 821 次
概述:Spire.PDF for Java 支持通過 PdfGrid 類和 PdfTable 類在 PDF 頁面中繪制表格,在“Java 創建并格式并 PDF 表格”一文中介紹了如何繪制表格。本篇文章將介紹使用 PdfTableExtractor 類來提取 PDF 中的表格的方法。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
首先,您需要在 Java 程序中添加 Spire.Pdf.jar 文件作為依賴項。您可以從這個鏈接下載 JAR 文件;如果您使用 Maven,則可以通過在 pom.xml 文件中添加以下代碼導入 JAR 文件。
<repositories> <repository> <id>com.e-iceblue</id> <url>//repo.e-iceblue.cn/repository/maven-public/</url> </repository> </repositories> <dependencies> <dependency> <groupId>e-iceblue</groupId> <artifactId>spire.pdf</artifactId> <version>4.12.1</version> </dependency> </dependencies>
import com.spire.pdf.*; import com.spire.pdf.utilities.PdfTable; import com.spire.pdf.utilities.PdfTableExtractor; import java.io.FileWriter; import java.io.IOException; public class ExtractTable { public static void main(String[] args)throws IOException { //實例化PdfDocument類的對象 PdfDocument pdf = new PdfDocument(); //加載PDF文檔 pdf.loadFromFile("test.pdf"); //創建StringBuilder類的實例 StringBuilder builder = new StringBuilder(); //創建PdfTableExtractor類的對象 PdfTableExtractor extractor = new PdfTableExtractor(pdf); //遍歷每一頁 for (int page = 0; page < pdf.getPages().getCount(); page++) { //提取頁面中的表格存入PdfTable[]數組 PdfTable[] tableLists = extractor.extractTable(page); if (tableLists != null && tableLists.length > 0) { //遍歷表格 for (PdfTable table : tableLists) { int row = table.getRowCount();//獲取表格行 int column = table.getColumnCount();//獲取表格列 for (int i = 0; i < row; i++) { for (int j = 0; j < column; j++) { //獲取表格中的文本內容 String text = table.getText(i, j); //將獲取的text寫入StringBuilder容器 builder.append(text+" "); } builder.append("\r\n"); } } } } //保存為txt文檔 FileWriter fileWriter = new FileWriter("ExtractedTable.txt"); fileWriter.write(builder.toString()); fileWriter.flush(); fileWriter.close(); } }表格內容讀取結果:
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn