PDF(Portable Document Format) файли є одними з найбільш надійних і широко використовуваних форматів для обміну документами між різними платформами — забезпечуючи послідовність макету та зовнішнього вигляду незалежно від програмного забезпечення чи пристрою. Проте є ситуації, коли розробники повинні програмно витягувати текст з PDF файлів, наприклад, для аналізу вмісту, індексування документів або конвертації PDF в редаговані текстові формати.

У цій статті ми розглянемо, як витягувати текст з PDF-файлів і створити конвертер PDF у текст за допомогою .NET REST API, що дозволяє безшовне та автоматизоване витягування тексту через виклики REST API.

API обробки PDF

Використовуйте потужність Aspose.PDF Cloud SDK for .NET для ефективного витягування тексту з PDF-файлів. Крім витягування тексту, SDK дозволяє створювати PDF-документи з нуля або за шаблонами, редагувати існуючі PDF-файли та перетворювати їх в інші підтримувані формати. Ви також можете виконувати такі завдання, як дешифрування, об’єднання та маніпулювання PDF-файлами безпосередньо через .NET REST API.

Тепер, щоб почати, нам потрібно встановити SDK у нашому .NET проекті.

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

Ми також повинні створити безкоштовний обліковий запис на Cloud Dashboard та отримати наші персоналізовані клієнтські дані для доступу.

Виконайте конвертацію PDF у текст у C#

Будь ласка, дотримуйтесь наведених нижче кроків, щоб витягти текст з PDF файлу, використовуючи C# .NET.

PdfApi pdfApi = new PdfApi(clientSecret, clientID);

Створіть об’єкт класу PdfApi, передаючи в якості аргументів облікові дані клієнта, отримані вище.

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

Read the input PDF from local drive and upload to cloud storage using UploadFile(...) method.

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

Нам потрібно вказати регіон у файлі PDF, звідки ми повинні витягнути текстовий вміст, використовуючи метод GetText(...).

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

Якщо текстовий вміст було вилучено, ми можемо або зберегти його на локальному диску, або вивести на консоль.

// Для отримання більшої кількості прикладів, будь ласка, відвідайте https://github.com/aspose-pdf-cloud/aspose-pdf-cloud-dotnet

// Отримайте облікові дані клієнта з https://dashboard.aspose.cloud/
string clientSecret = "XXXXXXXXX";
string clientID = "XXXXXX-XXXXXXX-be35-ff5c3a6aa4a2";

// створити об'єкт PdfApi, передаючи облікові дані клієнта як аргументи
PdfApi pdfApi = new PdfApi(clientSecret, clientID);

// Input PDF file name
String inputFile = "input.pdf";
// Завантажте PDF файл у екземпляр потоку.
var sourceFile = OpenRead(inputFile);

// Завантажте PDF файл до хмарного сховища.
pdfApi.UploadFile("inputPDF.pdf", sourceFile);

// X-координата нижнього - лівого кута
Double LLX = 200.0;
// Y - координата нижнього лівого кута.
Double LLY = 200.0;
// X - координата верхнього правого кута.
Double URX = 600.0;
// Y - координата верхнього правого кута.
Double URY = 650.0;

// Викличте API, щоб витягти текст з вказаних координат.
TextRectsResponse response = pdfApi.GetText("inputPDF.pdf", LLX, LLY, URX, URY, null, null, null, null, null);

// Тепер ітеруйте через кожне входження тексту та виводьте в консоль.
// Альтернативно, ми також можемо зберегти вихідні дані безпосередньо у файл .txt.
for (int counter = 0; counter <= response.TextOccurrences.List.Count - 1; counter++)
{
    // write text content in console
    Console.WriteLine(response.TextOccurrences.List[counter].Text);
}

Витягти текст з PDF за допомогою cURL

Окрім використання фрагментів коду .NET або Java, ви також можете витягувати текст з PDF-файлів за допомогою Aspose.PDF Cloud через команди cURL. Отже, у цьому підході передумовою є генерування токена доступу JWT (на основі ваших клієнтських облікових даних), який можна отримати за допомогою наступної команди.

Крок 1. - Отримати 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"

Крок 1. - Витягнути текст з 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"
  • Після успішного виконання команди текст з зазначеної прямокутної області екстрагується в текстовий файл.

Безкоштовний додаток для розбору PDF

Якщо ви хочете перевірити можливості API без кодування чи команд cURL, спробуйте використати наш [Free PDF Parser] додаток, побудований на основі .NET REST APIs.

pdf parser app

Заключні зауваження

У цій статті ми навчилися деталям інтеграції Aspose.PDF Cloud SDK для .NET у наш .NET проект для цілей витягування тексту, а також дослідили можливість використання cURL команд для виконання витягування тексту з PDF через інтерфейс командного рядка. Тож, якщо ваша мета – аналіз даних, машинне навчання або інші цілі автоматизації, SDK надає вам надійні інструменти для ефективної роботи з вмістом PDF. Застосуйте ці навички на практиці та оптимізуйте обробку PDF як професіонал!

Читальний матеріал

Схожі статті

Ми також рекомендуємо відвідати наступні посилання, щоб дізнатися більше про: