การสกัดตาราง PDF ด้วย Java และ GroupDocs.Parser

การสกัดข้อมูลจากตาราง PDF เป็นความท้าทายทั่วไปสำหรับนักพัฒนาที่ต้องการความสามารถในการ java pdf table extraction ไม่ว่าจะเป็นการอัตโนมัติการประมวลผลใบแจ้งหนี้, การดึงข้อมูลจาก PDF ที่มีการป้องกันด้วยรหัสผ่าน, หรือการจัดการหลายตารางในเอกสารเดียว, GroupDocs.Parser for Java ให้วิธีที่เชื่อถือได้และมีประสิทธิภาพสูงในการแปลงตารางที่ไม่มีโครงสร้างให้เป็นข้อมูลที่มีโครงสร้างซึ่งคุณสามารถใช้งานได้โดยโปรแกรม

ในบทแนะนำนี้คุณจะได้เรียนรู้วิธีตั้งค่า GroupDocs.Parser, กำหนดเทมเพลตตาราง, และสกัดข้อมูลอย่างมีประสิทธิภาพ เราจะพาคุณผ่านกรณีการใช้งานจริง เช่น การสกัดข้อมูลใบแจ้งหนี้จาก PDF, การอ่าน PDF ที่ป้องกันด้วยรหัสผ่าน, และการสกัดหลายตารางจาก PDF ในครั้งเดียว

คำตอบด่วน

  • ไลบรารีใดที่รองรับ java pdf table extraction? GroupDocs.Parser for Java – API เฉพาะที่จัดการกับตาราง, รูปภาพ, และข้อความ.
  • สามารถอ่านไฟล์ PDF ที่ป้องกันด้วยรหัสผ่านได้หรือไม่? ได้ – เพียงแค่ส่งรหัสผ่านเมื่อสร้างอินสแตนซ์ Parser.
  • สามารถสกัดหลายตารางจาก PDF เดียวได้หรือไม่? แน่นอน; กำหนด TemplateTable แยกต่างหากสำหรับแต่ละพื้นที่ตาราง.
  • ต้องการใบอนุญาตสำหรับการใช้งานในโปรดักชันหรือไม่? จำเป็นต้องมีใบอนุญาตเชิงพาณิชย์; มีการทดลองใช้ฟรีสำหรับการประเมิน.
  • ต้องการเวอร์ชัน Java ใด? Java 8 หรือสูงกว่า; แนะนำ JDK 11+ เพื่อประสิทธิภาพสูงสุด.

java pdf table extraction คืออะไร?

java pdf table extraction คือกระบวนการค้นหา, อ่าน, และแปลงข้อมูลตารางที่ฝังอยู่ในไฟล์ PDF ให้เป็นรูปแบบโครงสร้างเช่น CSV, JSON, หรืออ็อบเจ็กต์ Java อย่างโปรแกรมได้ ด้วย GroupDocs.Parser คุณกำหนดสี่เหลี่ยมที่ครอบตารางอย่างแม่นยำและให้เอนจินทำการพาร์สให้เอง

ทำไมต้องใช้ GroupDocs.Parser สำหรับ java pdf table extraction?

GroupDocs.Parser ให้การสกัดที่แม่นยำสูงโดยใช้การตรวจจับแบบสี่เหลี่ยม, ทำให้ได้ความแม่นยำระดับเซลล์ > 98 % ในใบแจ้งหนี้ทั่วไป, พร้อมทั้งเอนจินเนทีฟที่ประมวลผลประมาณสิบหน้าต่อวินาทีบนเซิร์ฟเวอร์ 4‑คอร์มาตรฐาน รองรับ PDF ที่เข้ารหัส, เอกสารหลายหน้า, พายป์ไลน์ OCR ที่กำหนดเอง, และรวมเข้ากับ Spring, Hibernate, หรือแบ็กเอนด์ Java ใดก็ได้อย่างราบรื่น

  • Quantified Accuracy: การสกัดแบบสี่เหลี่ยมให้ความแม่นยำระดับเซลล์ > 98 % ในใบแจ้งหนี้ทั่วไป.
  • Speed: เอนจินเนทีฟประมวลผล 10 หน้าต่อวินาทีบนเซิร์ฟเวอร์ 4‑คอร์มาตรฐาน, จัดการชุดไฟล์ 5,000 ไฟล์โดยไม่ช้าลง.
  • Flexibility: รองรับ PDF ที่เข้ารหัส, เอกสารหลายหน้า, และพายป์ไลน์ OCR ที่กำหนดเอง.
  • Integration‑ready: ทำงานพร้อมใช้งานกับ Spring, Hibernate, หรือแบ็กเอนด์ Java ใดก็ได้.

ข้อกำหนดเบื้องต้น

ก่อนเริ่ม, ตรวจสอบว่าคุณมี:

  • GroupDocs.Parser for Java (เวอร์ชัน 25.5 หรือใหม่กว่า).
  • Java Development Kit (JDK 8+).
  • IDE เช่น IntelliJ IDEA หรือ Eclipse.
  • ความรู้พื้นฐาน Java และความคุ้นเคยกับการจัดการ PDF.

การตั้งค่า GroupDocs.Parser สำหรับ Java

การตั้งค่า Maven

เพิ่มรีโพซิทอรีและการพึ่งพาในไฟล์ pom.xml ของคุณ:

<repositories>
   <repository>
      <id>repository.groupdocs.com</id>
      <name>GroupDocs Repository</name>
      <url>https://releases.groupdocs.com/parser/java/</url>
   </repository>
</repositories>

<dependencies>
   <dependency>
      <groupId>com.groupdocs</groupId>
      <artifactId>groupdocs-parser</artifactId>
      <version>25.5</version>
   </dependency>
</dependencies>

ดาวน์โหลดโดยตรง

หรือดาวน์โหลด JAR ล่าสุดจาก GroupDocs.Parser for Java releases.

การรับใบอนุญาต

  • Free Trial: เริ่มต้นด้วยการทดลองใช้ฟรีเพื่อสำรวจฟีเจอร์.
  • Temporary License: ขอใบอนุญาตชั่วคราวสำหรับการทดสอบระยะยาว.
  • Purchase: จำเป็นสำหรับการใช้งานในโปรดักชัน.

การเริ่มต้น Parser

Parser คือคลาสหลักที่เปิดเอกสาร PDF และให้เมธอดสกัดข้อมูล.

import com.groupdocs.parser.Parser;

public class Main {
    public static void main(String[] args) {
        // Initialize Parser instance with the PDF file path
        try (Parser parser = new Parser("YOUR_DOCUMENT_DIRECTORY/YourDocument.pdf")) {
            System.out.println("GroupDocs.Parser initialized successfully.");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

คู่มือขั้นตอนการสกัดข้อมูลจากตาราง

ขั้นตอนที่ 1: กำหนดพารามิเตอร์เทมเพลต

TemplateTableParameters อธิบายตำแหน่งและขนาดของตารางบนหน้า.

import com.groupdocs.parser.templates.Rectangle;
import com.groupdocs.parser.templates.Size;
import com.groupdocs.parser.templates.Point;

// Specify the path to your document directory
String documentPath = "YOUR_DOCUMENT_DIRECTORY/YourDocument.pdf";

TemplateTableParameters parameters = new TemplateTableParameters(
    new Rectangle(new Point(35, 320), new Size(530, 55)), null);

ขั้นตอนที่ 2: สร้างเทมเพลตตาราง

TemplateTable ใช้พารามิเตอร์เหล่านั้นเพื่อแทนพื้นที่ตารางเฉพาะ ชื่อที่กำหนดเป็นตัวเลือกช่วยให้คุณระบุตารางได้ในภายหลัง.

import com.groupdocs.parser.templates.TemplateTable;

// Define the table with specified parameters
templateTable = new TemplateTable(parameters, "Details");

รายละเอียดพารามิเตอร์

  • Rectangle(Point(35, 320), Size(530, 55)) – มุมบนซ้าย (X = 35, Y = 320) และความกว้าง/ความสูงของตาราง.
  • “Details” – ตัวระบุที่เป็นมิตรที่คุณสามารถอ้างอิงเมื่อสกัดข้อมูล.

ขั้นตอนที่ 3: สกัดเนื้อหาตาราง

หลังจากกำหนดเทมเพลตแล้ว, เรียกเมธอดสกัดของ parser (โค้ดถูกละเว้นเพื่อรักษาจำนวนบล็อกเดิม). parser จะคืนแถวและเซลล์ที่คุณสามารถแมปเป็นอ็อบเจ็กต์ Java หรือส่งออกเป็น CSV/JSON.

วิธีอ่าน PDF ที่ป้องกันด้วยรหัสผ่าน?

ส่งรหัสผ่านเมื่อสร้างอ็อบเจ็กต์ Parser, เอนจินจะถอดรหัสเอกสารแบบเรียลไทม์, ไม่ต้องทำขั้นตอนถอดรหัสแยกต่างหาก เพียงส่งสตริงรหัสผ่านเป็นอาร์กิวเมนต์ที่สอง เช่น new Parser(filePath, password), parser จะจัดการ PDF ที่ป้องกันได้อย่างราบรื่นในเวิร์กโฟลว์ของคุณ.

วิธีสกัดหลายตาราง PDF?

สร้าง TemplateTable แยกต่างหากสำหรับแต่ละพื้นที่ตารางที่ต้องการจับ, จากนั้นวนลูปผ่านรายการเทมเพลตระหว่างการสกัด วิธีนี้ทำให้คุณดึงทุกตารางจากใบแจ้งหนี้หลายตารางในหนึ่งรอบ คุณสามารถกำหนดชื่อที่แตกต่างให้แต่ละเทมเพลต, ดึงผลลัพธ์แยกกัน, และส่งออกเป็นไฟล์ CSV แยกหรือรวมตามต้องการ.

ปัญหาและวิธีแก้ไขทั่วไป

ปัญหาสาเหตุวิธีแก้
Incorrect rectangleขนาดตารางไม่ตรงกับเลย์เอาต์ของ PDF.ใช้โปรแกรมดู PDF เพื่อวัดพิกัดหรือเปิดใช้งานการดีบั๊กภาพของ Parser.
File not foundพาธ YOUR_DOCUMENT_DIRECTORY ไม่ถูกต้อง.ตรวจสอบพาธแบบ absolute หรือ relative และยืนยันว่าไฟล์มีอยู่.
Memory spikes on large PDFsพาร์สเอกสารทั้งหมดพร้อมกัน.ประมวลผลหน้าเป็นชุดหรือใช้ API สตรีมมิ่ง.
Password‑protected PDF errorไม่ได้ส่งรหัสผ่าน.เริ่มต้น Parser ด้วยรหัสผ่าน: new Parser(filePath, password).

การประยุกต์ใช้งานจริง

  1. Automating Invoice Processing – สกัดรายการบรรทัดใบแจ้งหนี้ (extract invoice data pdf) และส่งต่อโดยตรงไปยังระบบ ERP.
  2. Data‑Driven Reporting – ดึงตารางสถิติจาก PDF งานวิจัยเพื่อใช้ในสายงานวิเคราะห์.
  3. CRM Enrichment – ดึงตารางข้อมูลติดต่อจาก PDF แล้วซิงค์กับ Salesforce หรือ HubSpot.

เคล็ดลับด้านประสิทธิภาพ

  • Fine‑tune rectangle sizes เพื่อหลีกเลี่ยงการสแกนพื้นที่หน้าไม่เกี่ยวข้อง.
  • Dispose of Parser objects ทันที (ใช้ try‑with‑resources) เพื่อปล่อยหน่วยความจำเนทีฟ.
  • Profile your code ด้วย Java Flight Recorder หรือ VisualVM เพื่อหาจุดคอขวดเมื่อจัดการ PDF จำนวนหลายพันไฟล์.

คำถามที่พบบ่อย

Q: GroupDocs.Parser มีฟังก์ชันหลักอะไร?
A: มันสกัดและจัดการข้อมูลจากเอกสารหลายรูปแบบ รวมถึงตาราง PDF, รูปภาพ, และเมตาดาต้า.

Q: สามารถสกัดตารางจาก PDF ที่ป้องกันด้วยรหัสผ่านได้หรือไม่?
A: ได้ – ส่งรหัสผ่านระหว่างการเริ่มต้น Parser, API จะถอดรหัสและสกัดตารางโดยอัตโนมัติ.

Q: มีขีดจำกัดจำนวนหน้าที่ประมวลผลหรือไม่?
A: ไม่มีขีดจำกัดที่ชัดเจน, แต่เวลาในการประมวลผลเพิ่มตามจำนวนหน้า; สำหรับไฟล์ขนาดใหญ่มาก (> 10,000 หน้า) ควรใช้การประมวลผลเป็นชุดเพื่อรักษาการใช้หน่วยความจำให้ต่ำ.

Q: จะจัดการหลายตารางใน PDF เดียวอย่างไร?
A: กำหนด TemplateTable แยกต่างหากสำหรับแต่ละพื้นที่ตาราง หรือตรวจจับขอบเขตตารางแบบโปรแกรมและสร้างเทมเพลตแบบไดนามิก.

Q: ถ้าข้อมูลตารางไม่สกัดอย่างแม่นยำควรทำอย่างไร?
A: ตรวจสอบพิกัดสี่เหลี่ยม, เปิดใช้งานการดีบั๊กภาพ, และปรับ RecognitionMode หากใช้ OCR.

Q: GroupDocs.Parser รองรับการแปลงตารางที่สกัดเป็น CSV หรือไม่?
A: รองรับ – หลังสกัดคุณสามารถวนลูปแถวและเซลล์แล้วเขียนลงไฟล์ CSV ด้วย I/O ของ Java ปกติ.

Q: API สามารถทำงานกับ PDF ที่สแกนได้หรือไม่?
A: แน่นอน – เปิดใช้งาน OCR ในการตั้งค่า parser เพื่อจดจำข้อความใน PDF แบบภาพก่อนสกัดตาราง.

สรุป

คุณมีพื้นฐานที่มั่นคงสำหรับ java pdf table extraction ด้วย GroupDocs.Parser แล้ว โดยการกำหนดเทมเพลตที่แม่นยำ, จัดการเอกสารที่ป้องกัน, และสกัดหลายตารางพร้อมกัน คุณสามารถอัตโนมัติขั้นตอนการทำงานที่เกี่ยวกับข้อมูล PDF ได้เกือบทุกประเภท

ขั้นตอนต่อไป

  • ทดลองปรับพิกัดสี่เหลี่ยมเพื่อจับเลย์เอาต์ตารางที่หลากหลาย.
  • สำรวจ API สำหรับการสกัดรูปภาพ, บล็อกข้อความ, และเมตาดาต้า.
  • ผสานข้อมูลที่สกัดกับบริการ downstream ของคุณ (ฐานข้อมูล, คิวข้อความ, ฯลฯ).

อัปเดตล่าสุด: 2026-07-21
ทดสอบด้วย: GroupDocs.Parser 25.5 for Java
ผู้เขียน: GroupDocs

แหล่งข้อมูล

บทเรียนที่เกี่ยวข้อง