วิธีการอัตโนมัติการสกัดข้อมูลจากไฟล์ PDF แบบหลายหน้าด้วย Aspose.OCR
PDFs มัลติหน้าจากสแกนเนอร์ไฟล์หรือกระแสการทํางานขององค์กรมักจะถือจํานวนมากของข้อความและตารางที่ไม่สามารถค้นหาได้ การสกัดด้วยมือช้าและไม่ปรับขนาด Aspose.OCR สําหรับ .NET จะอัตโนมัติการสกปรกข้อความแท็บและโครงสร้างจากไฟล์ PDF ยาวและซับซ้อนที่มีรหัสขั้นต่ํา
ปัญหาโลกจริง
กฎหมายการเงินและเอกสารวิชาการมักจัดการกับไฟล์ PDF ที่สแกนหลายหน้าที่มีหลายร้อยหน้า การ استخراجข้อความและข้อมูลด้วยมือเป็นข้อผิดพลาดและแรงงานที่รุนแรง
ความคิดเห็นเกี่ยวกับโซลูชัน
Aspose.OCR for .NET สามารถกระบวนการชุดและสกัดข้อความ / ตารางจากแต่ละหน้าใน PDF แบบหลายหน้า คุณสามารถระบุแถวหน้ารูปแบบการส่งออกและการบูรณาการอัตโนมัติกับแอพธุรกิจหรือไฟล์ดิจิตอล
ข้อกําหนด
- Visual Studio 2019 หรือภายหลัง
- .NET 6.0 หรือเร็วกว่า (หรือ .Net Framework 4.6.2+)
- Aspose.OCR สําหรับ .NET จาก NuGet
- ความสามารถในการเขียนโปรแกรม C#
PM> Install-Package Aspose.OCR
การดําเนินการขั้นตอนขั้นตอน
ขั้นตอน 1: ติดตั้งและตั้งค่า Aspose.OCR
using Aspose.OCR;
ขั้นตอน 2: เพิ่มไฟล์ PDF แบบหลายหน้า
OcrInput input = new OcrInput(InputType.PDF);
input.Add("archive.pdf"); // all pages
input.Add("report.pdf", 5, 10); // pages 5-14
ขั้นตอนที่ 3: การตั้งค่าการยอมรับและการจัดอันดับหน้า
RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English;
settings.DetectAreasMode = DetectAreasMode.AUTO;
ขั้นตอน 4: สารสกัดข้อความและตารางจากแต่ละหน้า
AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);
ขั้นตอน 5: ผลการส่งออกสําหรับแต่ละหน้า
int page = 1;
foreach (RecognitionResult result in results)
{
result.Save($"output_page_{page}.txt", SaveFormat.Text);
result.Save($"output_page_{page}.xlsx", SaveFormat.Xlsx);
result.Save($"output_page_{page}.json", SaveFormat.Json);
page++;
}
ขั้นตอนที่ 6: การจัดการข้อผิดพลาดและการรับรองข้อมูล
try
{
AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
ขั้นตอน 7: การเพิ่มประสิทธิภาพสําหรับไฟล์ขนาดใหญ่และงานแบทช์
- การประมวลผล PDFs ในโฟลเดอร์ตามแผนที่
- ใช้การประมวลผลหน้าตัวเลือกสําหรับความเร็ว
- การตรวจสอบหน่วยความจํา / การใช้ CPU
foreach (string file in Directory.GetFiles("./pdfs", "*.pdf"))
{
input.Add(file);
}
ขั้นตอน 8: ตัวอย่างที่สมบูรณ์
using Aspose.OCR;
using System;
using System.Collections.Generic;
using System.IO;
class Program
{
static void Main(string[] args)
{
try
{
OcrInput input = new OcrInput(InputType.PDF);
input.Add("archive.pdf");
input.Add("report.pdf", 5, 10);
RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English;
settings.DetectAreasMode = DetectAreasMode.AUTO;
AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);
int page = 1;
foreach (RecognitionResult result in results)
{
result.Save($"output_page_{page}.txt", SaveFormat.Text);
result.Save($"output_page_{page}.xlsx", SaveFormat.Xlsx);
result.Save($"output_page_{page}.json", SaveFormat.Json);
page++;
}
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
}
}
ใช้กรณีและแอปพลิเคชัน
กฎหมายและการปฏิบัติตามการจัดเก็บ
สกัดเนื้อหาเต็มของข้อตกลงการลงทะเบียนหรือเอกสารรัฐบาลเพื่อการค้นหาและการปฏิบัติตาม
สถาปัตยกรรมวิชาการและวิจัย
การดิจิทัลและการแบ่งจดหมายหลักสูตรหรือตารางข้อมูลสําหรับการวิเคราะห์หรือการเรียนรู้อิเล็กทรอนิกส์
กระแสการทํางานทางการเงินและการตรวจสอบ
สารสกัดอัตโนมัติจากเอกสารรายงานขนาดใหญ่ รายงานและแผ่นกระจาย
ความท้าทายและโซลูชั่นทั่วไป
ความท้าทาย 1: การจัดเรียงหน้าที่ไม่สม่ําเสมอ
โซลูชัน: ใช้การตรวจจับอัตโนมัติหรือตั้งโหมดที่แตกต่างกันต่อช่วงหน้า
ความท้าทาย 2: PDFs ใหญ่มาก
**โซลูชัน: ** การประมวลผลในชุด; ส่วนแบ่งไฟล์เพื่อประสิทธิภาพของหน่วยความจําที่ดีขึ้น
ความท้าทาย 3: เนื้อหาผสม (ข้อความตารางภาพ)
โซลูชัน: การตรวจสอบและผลลัพธ์หลังกระบวนการ; โหมดตรวจจับเสียง
การพิจารณาประสิทธิภาพ
- PDF ขนาดใหญ่ต้องการหน่วยความจํา / CPU มากขึ้น
- การทํางานของแบทช์กลางวันสําหรับประสิทธิภาพที่ดีที่สุด
- การยืนยันตัวอย่างการส่งออกก่อนการรวม
แนวทางที่ดีที่สุด
- ใช้สัญญาชื่อเพื่อติดตามได้ง่าย
- ส่วนแบ่งไฟล์ PDF แบบหลายหน้าหากไฟล์ขนาดใหญ่มาก
- การรักษาความปลอดภัยทั้งเอกสารแหล่งกําเนิดและส่งออก
- การยืนยันและตรวจสอบผลลัพธ์ในกระบวนการทํางานที่สําคัญ
การ์ตูนขั้นสูง
สภาพแวดล้อม 1: การส่งออกไปยัง PDF ที่สามารถค้นหาได้ต่อหน้า
foreach (RecognitionResult result in results)
{
result.Save($"output_page_{page}.pdf", SaveFormat.Pdf);
page++;
}
ฉาก 2: การรวมกับฐานข้อมูลหรือคลาวด์
foreach (RecognitionResult result in results)
{
string json = File.ReadAllText($"output_page_{page}.json");
// Upload json or send to a cloud endpoint
}
ข้อสรุป
Aspose.OCR สําหรับ .NET ช่วยให้การสกัดข้อความที่แข็งแกร่งและสามารถปรับขนาดได้และข้อมูลที่โครงสร้างจากไฟล์ PDF แบบหลายหน้าช่วยประหยัดเวลาในการทํางานด้วยตนเองและปรับปรุงอัตโนมัติของกระบวนการทํางาน
ดูตัวอย่างการประมวลผล PDF และชุดเพิ่มเติมใน Aspose.OCR สําหรับการอ้างอิง API .NET .