PDF(Portable Document Format) là một trong những định dạng được tin cậy và sử dụng rộng rãi nhất để chia sẻ tài liệu trên các nền tảng khác nhau—đảm bảo bố cục và giao diện nhất quán bất kể phần mềm hoặc thiết bị. Tuy nhiên, có những tình huống mà các nhà phát triển cần trích xuất văn bản từ các tệp PDF một cách lập trình, chẳng hạn như phân tích nội dung, lập chỉ mục tài liệu, hoặc chuyển đổi PDF thành các định dạng văn bản có thể chỉnh sửa.

Trong bài viết này, chúng ta sẽ khám phá cách trích xuất văn bản từ các tệp PDF và xây dựng một bộ chuyển đổi PDF sang Văn bản bằng cách sử dụng .NET REST API, cho phép trích xuất văn bản liền mạch và tự động thông qua các cuộc gọi REST API.

API xử lý PDF

Tận dụng sức mạnh của Aspose.PDF Cloud SDK for .NET để trích xuất văn bản từ các tệp PDF một cách hiệu quả. Ngoài việc trích xuất văn bản, SDK còn cho phép bạn tạo các tài liệu PDF từ đầu hoặc từ mẫu, chỉnh sửa các tệp PDF hiện có và chuyển đổi chúng sang các định dạng hỗ trợ khác. Bạn cũng có thể thực hiện các nhiệm vụ như giải mã, hợp nhất và thao tác các tệp PDF trực tiếp thông qua API REST .NET.

Bây giờ để bắt đầu, chúng ta cần cài đặt SDK trong dự án .NET của chúng ta.

NuGet\Install-Package Aspose.Pdf-Cloud -Version 25.9.0

Chúng tôi cũng cần tạo một tài khoản miễn phí trên Cloud Dashboard và nhận thông tin xác thực khách hàng cá nhân hóa của chúng tôi.

Thực hiện chuyển đổi PDF sang văn bản trong C#

Vui lòng làm theo các bước được đề cập dưới đây để trích xuất văn bản từ tệp PDF bằng C# .NET.

PdfApi pdfApi = new PdfApi(clientSecret, clientID);

Tạo một đối tượng của lớp PdfApi nơi chúng ta truyền thông tin tài khoản khách hàng có được ở trên làm tham số.

String inputFile = "sourceFile.pdf";
var sourceFile = System.IO.File.OpenRead(inputFile);
pdfApi.UploadFile("sourceFile.pdf", sourceFile);

Đọc tệp PDF từ ổ đĩa cục bộ và tải lên lưu trữ đám mây bằng cách sử dụng phương thức UploadFile(...).

TextRectsResponse response = pdfApi.GetText("inputPDF.pdf", LLX, LLY, URX, URY, null, null, null, null, null);

Chúng ta cần chỉ định vùng trên tệp PDF từ nơi chúng ta cần trích xuất nội dung văn bản bằng cách sử dụng phương thức GetText(...).

for (int counter = 0; counter <= response.TextOccurrences.List.Count - 1; counter++)
{
    // write text content in console
    Console.WriteLine(response.TextOccurrences.List[counter].Text);
}

Một khi nội dung văn bản đã được trích xuất, chúng ta có thể lưu trên ổ đĩa cục bộ hoặc in nó ra trong bảng điều khiển.

// Để biết thêm ví dụ, vui lòng truy cập https://github.com/aspose-pdf-cloud/aspose-pdf-cloud-dotnet

// Lấy thông tin xác thực của khách hàng từ https://dashboard.aspose.cloud/
string clientSecret = "XXXXXXXXX";
string clientID = "XXXXXX-XXXXXXX-be35-ff5c3a6aa4a2";

// Tạo một đối tượng của PdfApi trong khi truyền thông tin chứng thực của khách hàng làm đối số.
PdfApi pdfApi = new PdfApi(clientSecret, clientID);

// Input PDF file name
String inputFile = "input.pdf";
// Tải tệp PDF vào phiên bản stream
var sourceFile = OpenRead(inputFile);

// Tải lên tệp PDF lên lưu trữ đám mây.
pdfApi.UploadFile("inputPDF.pdf", sourceFile);

// Tọa độ X của góc dưới - bên trái
Double LLX = 200.0;
// Tọa độ Y của góc dưới bên trái.
Double LLY = 200.0;
// Tọa độ X của góc trên bên phải.
Double URX = 600.0;
// Y - tọa độ của góc trên bên phải.
Double URY = 650.0;

// Gọi API để trích xuất văn bản từ tọa độ đã chỉ định
TextRectsResponse response = pdfApi.GetText("inputPDF.pdf", LLX, LLY, URX, URY, null, null, null, null, null);

// Bây giờ lặp qua từng Sự xuất hiện của văn bản và in ra bảng điều khiển.
// Ngoài ra, chúng ta cũng có thể lưu trực tiếp đầu ra vào file .txt.
for (int counter = 0; counter <= response.TextOccurrences.List.Count - 1; counter++)
{
    // write text content in console
    Console.WriteLine(response.TextOccurrences.List[counter].Text);
}

Trích xuất văn bản từ PDF bằng cURL

Ngoài việc sử dụng đoạn mã .NET hoặc Java, bạn cũng có thể trích xuất văn bản từ các tệp PDF bằng cách sử dụng Aspose.PDF Cloud thông qua các lệnh cURL. Vì vậy, trong phương pháp này, yêu cầu tiên quyết là tạo một mã thông báo truy cập JWT (dựa trên thông tin xác thực của bạn), mã này có thể được lấy bằng cách sử dụng lệnh sau.

Bước 1. - Lấy mã thông báo JWTAccess:

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=XXXXX-XXXXX-XXXXXX-ff5c3a6aa4a2&client_secret=XXXXXXXXXXXX" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Bước 1. - Trích xuất văn bản từ tệp PDF:

curl -v "https://api.aspose.cloud/v3.0/pdf/{inputPDF}/text?splitRects=true&LLX=10&LLY=10&URX=800&URY=800" \
-X GET \
-H  "accept: application/json" \
-H  "authorization: Bearer {Access_Token}" \
-o "extractedContent.txt"
  • Khi lệnh được thực thi thành công, văn bản từ khu vực hình chữ nhật đã chỉ định sẽ được trích xuất vào tệp văn bản.

Ứng dụng phân tích PDF miễn phí

Nếu bạn đang tìm cách thử nghiệm khả năng của API mà không cần lập trình hoặc lệnh cURL, thì hãy thử sử dụng ứng dụng [Free PDF Parser] của chúng tôi được xây dựng trên .NET REST APIs.

app phân tích PDF

Những nhận xét kết thúc

Trong bài viết này, chúng ta đã học về chi tiết cách tích hợp Aspose.PDF Cloud SDK cho .NET vào dự án .NET của chúng ta nhằm mục đích trích xuất văn bản và đồng thời, chúng ta đã khám phá tùy chọn sử dụng các lệnh cURL để thực hiện việc trích xuất văn bản PDF qua giao diện dòng lệnh. Vì vậy, cho dù mục tiêu của bạn là phân tích dữ liệu, học máy, hay các mục đích tự động hóa khác, SDK cung cấp cho bạn các công cụ đáng tin cậy để xử lý nội dung PDF một cách hiệu quả. Hãy thực hành những kỹ năng này và đơn giản hóa việc xử lý PDF của bạn như một chuyên gia!

Tài liệu đọc

Các bài viết liên quan

Chúng tôi cũng khuyên bạn nên truy cập các liên kết sau để tìm hiểu thêm về: