วิธีการสกัดข้อมูลและตารางโครงสร้างจาก PDF ใน .NET
การ extracting tables and structured data from PDFs is a common task for analysts, accountants, and anyone working with reports or financial statements. The Aspose.PDF.Plugin for .NET offers programmatic options for detection, parsing, และ exporting table such as flat text, CSV, or JSON.
การระบุตารางในข้อความ PDF
- PDF ง่าย: แผ่นที่มีขอบเซลล์ที่ชัดเจน ( Tab, Space, หรือ Line Delimiters) เป็นเรื่องง่ายที่สุดในการสกัด.
- การตรวจสอบภาพ: استخراجข้อความดิบหรือบริสุทธิ์และตรวจสอบรูปแบบลําดับ / ตารางที่สม่ําเสมอ.
- Heuristic Parsing: ใช้โลโก้ (เช่นการแสดงออกปกติตัวอธิบาย) เพื่อระบุเส้นและคอลัมน์ที่เป็นไปได้จากข้อความที่สกัด.
ตัวอย่าง: การส่งออกตารางเป็น CSV
using Aspose.Pdf.Plugins;
using System.IO;
string input = @"C:\Docs\financial-report.pdf";
var extractor = new TextExtractor();
var options = new TextExtractorOptions(TextExtractorOptions.TextFormattingMode.Pure);
options.AddInput(new FileDataSource(input));
string extracted = extractor.Process(options).ResultCollection[0].ToString();
// Simple parsing: Assume rows separated by '\n', columns by tabs or spaces
var rows = extracted.Split('\n');
using (var writer = new StreamWriter(@"C:\Docs\extracted-table.csv"))
{
foreach (var row in rows)
{
var columns = row.Split(new[] {'\t', ' '}, StringSplitOptions.RemoveEmptyEntries);
writer.WriteLine(string.Join(",", columns));
}
}ตัวอย่าง: การส่งออกตารางเป็น JSON
using System.Text.Json;
var table = rows
.Where(r => r.Trim().Length > 0)
.Select(r => r.Split(new[] {'\t', ' '}, StringSplitOptions.RemoveEmptyEntries))
.ToList();
File.WriteAllText(@"C:\Docs\extracted-table.json", JsonSerializer.Serialize(table));ข้อ จํากัด & เคล็ดลับขั้นสูง
- เซลล์ผสม / สเปน: การ استخراجโปรแกรมส่วนใหญ่ไม่สามารถตรวจจับเซลลผสมหรือหลายเหลี่ยมได้อย่างน่าเชื่อถือได้ การตรวจสอบด้วยตนเองหรือโลโก้ที่กําหนดเองอาจจําเป็น.
- ตารางที่ซับซ้อน: แผ่นที่มีรูปภาพกราฟิกหรือการจัดตั้งที่ผิดปกติจําเป็นต้องใช้เครื่องมือการสกัดแบบขั้นสูงหรือตัวอักษรโต๊ะ.
- ความแม่นยํา: การสกัดเป็นสิ่งที่ดีที่สุดด้วยตารางที่เรียบง่ายและโครงสร้างได้ดีเสมอตรวจสอบผลผลิตและปรับความ logic parsing สําหรับข้อมูลของคุณ.
กรณีการใช้งาน
- การวิเคราะห์ทางการเงินและการตรวจสอบ (สลักสกัดตารางค่าใช้จ่าย)
- ข้อมูลการสอบถามและความคิดเห็น (ตารางตอบสนองจํานวนเงิน)
- การย้ายข้อมูลจากเอกสาร PDF ไปยังฐานข้อมูลหรือ Excel
คําถามที่ถามบ่อย
**Q: เซลล์ผสมสามารถตรวจจับหรือจัดการโดยอัตโนมัติได้หรือไม?**A: ไม่น่าเชื่อถือ - เซลล์ผสม / สเปรย์มักต้องการการแก้ไขด้วยตนเองหรือการตรวจสอบภาพหลังจากการสกัด.
**Q: การ استخراجข้อมูลเป็น 100% ความแม่นยําเสมอหรือไม?**A: ไม่ - ผลลัพธ์ขึ้นอยู่กับโครงสร้างตารางการออกแบบและ คู่มือ PDF คุณภาพ เสมอตรวจสอบตารางที่สกัดและถ้าจําเป็นทําความสะอาดโดยใช้กฎหรือสคริปต์ที่กําหนดเอง.
**Q: โหมดที่ดีที่สุดสําหรับการสกัดโต๊ะคืออะไร?**A: เริ่มต้นด้วยโหมดบริสุทธิ์สําหรับตารางที่โครงสร้าง โหมดวัตถุดิบอาจเป็นประโยชน์สําหรับการทําเหมืองแร่ข้อมูลหรือ heuristics ที่กําหนดเอง.
Pro เคล็ดลับ: สําหรับการทําซ้ําการสกัดกร่อนล็อกโกนของคุณสําหรับแต่ละรูปแบบรายงาน โปรดพิจารณาการส่งออกไปยังทั้งสอง วีดีโอ และ JSON ความยืดหยุ่นสูงสุด.