วิธีการแยกวิเคราะห์ PDF ด้วย GroupDocs.Parser ใน Java

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

คำตอบด่วน

  • วัตถุประสงค์หลักของ GroupDocs.Parser คืออะไร? สกัดข้อมูลเชิงโครงสร้างจาก PDF, DOCX, XLSX, และเอกสารรูปแบบอื่นกว่า 50 รูปแบบ
  • ฉันสามารถสกัดข้อมูลจาก PDF โดยไม่ใช้แม่แบบได้หรือไม่? ได้, แต่การใช้แม่แบบจะเพิ่มความแม่นยำอย่างมากสำหรับ PDF ที่มีการจัดวางคงที่
  • ฉันต้องมีใบอนุญาตเพื่อทดลองใช้งานหรือไม่? มีการทดลองใช้ฟรีหรือใบอนุญาตชั่วคราวสำหรับการประเมินผล
  • ต้องการเวอร์ชัน Java ใด? Java 8 หรือสูงกว่า; ไลบรารีทำงานกับ JDK 11, 17, และใหม่กว่า
  • Maven เป็นวิธีเดียวที่ใช้เพิ่มไลบรารีหรือไม่? ไม่, คุณยังสามารถดาวน์โหลดไฟล์ JAR โดยตรงจากที่เก็บอย่างเป็นทางการ

“วิธีการแยกวิเคราะห์ PDF” ด้วย GroupDocs.Parser คืออะไร?

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

ทำไมต้องใช้ GroupDocs.Parser สำหรับการแยกวิเคราะห์ PDF?

GroupDocs.Parser ให้การสกัดข้อมูลที่ ความแม่นยำสูง (อัตราการจับคู่ฟิลด์ถึง 99.5 % ในแม่แบบตำแหน่งคงที่) และ การสนับสนุนรูปแบบที่กว้าง (กว่า 50 รูปแบบรวมถึง PDF, DOCX, XLSX, PPTX, HTML, และรูปภาพทั่วไป) ไลบรารียังมีการจัดการข้อผิดพลาดในตัวสำหรับรูปแบบที่ไม่รองรับ, ทำให้เป็นตัวเลือกที่มั่นคงสำหรับโครงการ parse pdf java ระดับองค์กร

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

  • GroupDocs.Parser เวอร์ชัน 25.5 หรือใหม่กว่า
  • Java Development Kit (JDK) 8 หรือใหม่กว่า ติดตั้งแล้ว
  • IDE เช่น IntelliJ IDEA หรือ Eclipse
  • Maven สำหรับการจัดการ dependencies (ไม่บังคับแต่แนะนำ)

ไลบรารีที่จำเป็น

  • GroupDocs.Parser เวอร์ชัน 25.5 หรือใหม่กว่า
  • Java Development Kit (JDK) 8 หรือใหม่กว่า

ข้อกำหนดการตั้งค่าสภาพแวดล้อม

  • IDE เช่น IntelliJ IDEA หรือ Eclipse
  • Maven สำหรับการจัดการ dependencies (ไม่บังคับแต่แนะนำ)

ความรู้เบื้องต้นที่จำเป็น

  • ความเข้าใจพื้นฐานเกี่ยวกับแนวคิดการเขียนโปรแกรม Java
  • ความคุ้นเคยกับโครงสร้างเอกสาร PDF และฟิลด์แม่แบบ

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

เพื่อเริ่มใช้ GroupDocs.Parser ในโครงการ Java ของคุณ, คุณต้องเพิ่มไลบรารีลงในการกำหนดค่าการสร้างของคุณ

การตั้งค่า Maven

เพิ่มการกำหนดค่าต่อไปนี้ในไฟล์ pom.xml ของคุณเพื่อรวม GroupDocs.Parser เป็น dependency:

<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>

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

หรือคุณสามารถดาวน์โหลดเวอร์ชันล่าสุดจาก GroupDocs.Parser สำหรับการปล่อยเวอร์ชัน Java

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

  • รับ การทดลองใช้ฟรี หรือใบอนุญาตชั่วคราวเพื่อสำรวจความสามารถเต็มของ GroupDocs.Parser
  • ซื้อใบอนุญาตเชิงพาณิชย์หากคุณตัดสินใจว่าเหมาะกับความต้องการการผลิตของคุณ

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

คู่มือการนำไปใช้

เราจะดำเนินการผ่านสามขั้นตอนสำคัญ: กำหนดฟิลด์แม่แบบ, สร้างแม่แบบเอกสาร, และ แยกวิเคราะห์ PDF ด้วยแม่แบบนั้น

กำหนดฟิลด์แม่แบบด้วยตำแหน่งคงที่

การระบุตำแหน่งข้อมูลบนหน้าอย่างแม่นยำเป็นสิ่งสำคัญสำหรับการสกัดที่เชื่อถือได้ ด้านล่างเป็นโค้ดสำหรับกำหนดฟิลด์แม่แบบ

ขั้นตอนที่ 1: นำเข้าคลาสที่จำเป็น

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

ขั้นตอนที่ 2: สร้าง Template Field

TemplateField แสดงถึงจุดข้อมูลเดียวในแม่แบบ PDF, กำหนดโดยชื่อและพิกัดสี่เหลี่ยม

// Define a rectangle for fixed positioning of the field
templateField = new TemplateField(
    new Rectangle(new Point(35, 135), new Size(100, 10)), // Coordinates and size
    "FromCompany"); // Name of the field

โค้ดส่วนนี้สร้าง TemplateField ชื่อ FromCompany ที่ตำแหน่ง (35, 135) มีขนาด 100 × 10 จุด การวางตำแหน่งที่แม่นยำนี้ช่วยให้ตัวแยกวิเคราะห์ สกัดข้อมูล PDF จากเอกสารที่รูปแบบไม่เปลี่ยนแปลง

Definition Anchor: TemplateField แสดงถึงจุดข้อมูลเดียวในแม่แบบ PDF, กำหนดโดยชื่อและพิกัดสี่เหลี่ยม

สร้างแม่แบบเอกสารด้วยฟิลด์ที่กำหนด

ตอนนี้รวมฟิลด์เหล่านั้นเป็นแม่แบบที่สามารถนำกลับมาใช้ใหม่ได้

ขั้นตอนที่ 1: นำเข้าคลาสที่จำเป็น

import com.groupdocs.parser.templates.Template;
import com.groupdocs.parser.templates.TemplateItem;
import java.util.Arrays;

ขั้นตอนที่ 2: สร้างและเพิ่ม Template Fields

DocumentTemplate เป็นคอนเทนเนอร์ที่เก็บหนึ่งหรือหลาย TemplateField และขับเคลื่อนกระบวนการสกัดข้อมูล

// Construct a template with specified fields
template = new Template(Arrays.asList(new TemplateItem[]{field}));

ฟิลด์ทั้งหมดที่กำหนดแล้วเป็นส่วนหนึ่งของ แม่แบบเอกสาร เดียว, พร้อมสำหรับการแยกวิเคราะห์

Definition Anchor: DocumentTemplate เป็นคอนเทนเนอร์ที่เก็บหนึ่งหรือหลาย TemplateField และขับเคลื่อนกระบวนการสกัดข้อมูล

แยกวิเคราะห์ PDF ด้วยแม่แบบ

เมื่อแม่แบบพร้อม, คุณสามารถสกัดข้อมูลที่ต้องการจาก PDF ใดก็ได้ที่ตรงกับแม่แบบ

ขั้นตอนที่ 1: นำเข้าคลาสที่จำเป็น

import com.groupdocs.parser.Parser;
import com.groupdocs.parser.data.DocumentData;
import com.groupdocs.parser.data.PageTextArea;
import com.groupdocs.parser.exceptions.UnsupportedDocumentFormatException;

ขั้นตอนที่ 2: แยกวิเคราะห์เอกสาร

Parser เป็นคลาสหลักที่อ่านเอกสาร, ใช้ DocumentTemplate, และคืนค่าฟิลด์ที่สกัดออกมา

String inputFilePath = "YOUR_DOCUMENT_DIRECTORY/sample_invoice.pdf"; // Replace with your document path

try (Parser parser = new Parser(inputFilePath)) {
    if (!parser.getFeatures().isText()) {
        throw new UnsupportedDocumentFormatException("The document format is not supported.");
    }

    // Parse the document using the template
    DocumentData data = parser.parseByTemplate(template);

    // Extract and print all relevant data from the parsed document
    for (int i = 0; i < data.getCount(); i++) {
        Object pageArea = data.get(i).getPageArea();
        PageTextArea area = pageArea instanceof PageTextArea ? (PageTextArea) pageArea : null;

        // Output extracted field name and text content if available
        String fieldName = data.get(i).getName();
        String fieldValue = area == null ? "Not a template field" : area.getText();
    }
} catch (UnsupportedDocumentFormatException e) {
    System.err.println("Error: " + e.getMessage());
}

โค้ดเปิด PDF, ตรวจสอบว่าการสกัดข้อความได้รับการสนับสนุน, แยกวิเคราะห์ไฟล์ ด้วยแม่แบบ, แล้ววนลูปผ่านแต่ละฟิลด์ที่สกัด หากรูปแบบเอกสารไม่รองรับ, จะโยนข้อยกเว้นที่ชัดเจน

Definition Anchor: Parser เป็นคลาสหลักที่อ่านเอกสาร, ใช้ DocumentTemplate, และคืนค่าฟิลด์ที่สกัดออกมา

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

GroupDocs.Parser มีความโดดเด่นในหลายสถานการณ์จริง:

  1. การประมวลผลใบแจ้งหนี้ – ดึงวันที่, จำนวนเงิน, และชื่อผู้ขายโดยอัตโนมัติ
  2. การสกัดข้อมูลจากแบบฟอร์ม – จับฟิลด์ที่กรอกในแบบฟอร์มสแกน
  3. การจัดการสัญญา – ระบุเงื่อนไขสำคัญ, ฝ่ายที่เกี่ยวข้อง, และวันที่ในสัญญา

กรณีการใช้งานเหล่านี้แสดงให้เห็นว่าการ วิธีการแยกวิเคราะห์ PDF อย่างโปรแกรมเมติกเป็นความสามารถสำคัญสำหรับองค์กรสมัยใหม่

ข้อควรพิจารณาด้านประสิทธิภาพ

  • ปล่อยวัตถุ Parser ทันทีเมื่อเสร็จเพื่อคืนหน่วยความจำ
  • ทำให้แม่แบบง่ายที่สุดเท่าที่จะทำได้; ฟิลด์ที่ไม่จำเป็นเพิ่มภาระงาน
  • อัปเดตไลบรารีเป็นประจำเพื่อรับประโยชน์จากแพตช์ประสิทธิภาพ
  • สำหรับไฟล์ที่มีมากกว่า 200 หน้า, ให้แยกวิเคราะห์หน้าเป็นลำดับหรือเพิ่ม heap ของ JVM (-Xmx2g) เพื่อหลีกเลี่ยงการกระตุ้นหน่วยความจำ

ปัญหาที่พบบ่อยและวิธีแก้

ปัญหาวิธีแก้
ข้อผิดพลาดรูปแบบที่ไม่รองรับตรวจสอบว่า PDF มีข้อความที่สามารถสกัดได้ (ไม่ใช่เพียงรูปภาพ) ใช้การประมวลผล OCR หากจำเป็น
ค่าฟิลด์ไม่ถูกต้องตรวจสอบพิกัดสี่เหลี่ยมอีกครั้ง; ใช้โปรแกรมดู PDF เพื่อวัดตำแหน่งที่แม่นยำ
การใช้หน่วยความจำสูงในไฟล์ขนาดใหญ่แยกวิเคราะห์หน้าเป็นรายหน้า หรือเพิ่มขนาด heap ของ JVM (-Xmx)

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

Q: GroupDocs.Parser คืออะไร?
A: GroupDocs.Parser เป็นไลบรารี Java ที่สกัดข้อมูลเชิงโครงสร้างจาก PDF, DOCX, XLSX, และรูปแบบเอกสารอื่นกว่า 50 รูปแบบ

Q: ฉันจะจัดการกับรูปแบบเอกสารที่ไม่รองรับอย่างไร?
A: ดัก UnsupportedDocumentFormatException ตามตัวอย่างโค้ด; แจ้งผู้ใช้และอาจเปลี่ยนไปใช้กระบวนการอื่นเป็นทางเลือก

Q: ฉันสามารถแยกวิเคราะห์รูปภาพภายใน PDF ด้วย GroupDocs.Parser ได้หรือไม่?
A: ได้, เปิดใช้งานฟีเจอร์สกัดรูปภาพในการกำหนดค่าตัวแยกวิเคราะห์เพื่อดึงรูปภาพที่ฝังอยู่

Q: ฉันจะสกัดข้อความธรรมดาจาก PDF โดยไม่ใช้แม่แบบได้อย่างไร?
A: ใช้เมธอด extractText() ของคลาส Parser; มันจะคืนเนื้อหาข้อความทั้งหมดซึ่งคุณสามารถประมวลผลต่อด้วย regex

Q: แนวทางปฏิบัติที่ดีที่สุดสำหรับการสร้างแม่แบบ PDF ที่สามารถนำกลับมาใช้ใหม่คืออะไร?
A: ทำให้สี่เหลี่ยมของฟิลด์กระชับรอบเนื้อหา, ตั้งชื่อฟิลด์ให้มีความหมาย, และทดสอบแม่แบบกับหลาย PDF เพื่อให้แน่ใจว่าความสอดคล้อง

สรุป

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

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

  • ลองแยกวิเคราะห์ประเภทเอกสารอื่นเช่น DOCX หรือ XLSX ด้วยวิธีการแม่แบบเดียวกัน
  • ทดลองรวม OCR สำหรับ PDF สแกนที่มีเฉพาะรูปภาพ
  • สำรวจฟีเจอร์ขั้นสูงเช่นการสกัดตาราง, ตัวประมวลผลข้อมูลแบบกำหนดเอง, และการประมวลผลเป็นชุด

สำหรับรายละเอียดเพิ่มเติม, เยี่ยมชมเอกสารอย่างเป็นทางการของ GroupDocs Documentation และเข้าร่วมชุมชนใน Support Forum


อัปเดตล่าสุด: 2026-05-18
ทดสอบกับ: GroupDocs.Parser 25.5
ผู้เขียน: GroupDocs

บทแนะนำที่เกี่ยวข้อง