Ми всі знаємо, що файли PDF є одним із найважливіших і широко використовуваних цифрових форматів, які використовуються для надійного представлення та обміну документами незалежно від програмного забезпечення, апаратного забезпечення чи операційної системи. Однак у деяких сценаріях нам може бути цікаво отримати витяг із великих PDF-файлів. Або ми можемо вимагати зберегти PDF-файл у текстовому режимі онлайн. Тож у цій статті ми докладно розглянемо, як розробити конвертер PDF у текст за допомогою Java REST API.
API генератора PDF
Отримайте можливість створювати PDF-документи за допомогою шаблонів або з нуля за допомогою нашого REST API. Водночас API також дозволяє редагувати, а також перетворювати PDF-файли в інші підтримувані формати. Ви також можете скористатися перевагами вилучення тексту з PDF, розшифровки та об’єднання PDF-файлів за допомогою Java Cloud SDK. Тепер, щоб використовувати Aspose.PDF Cloud SDK для Java, нам потрібно додати його посилання в нашу програму Java, включивши наступні деталі в pom.xml (проект типу збірки maven).
<repositories>
<repository>
<id>aspose-cloud</id>
<name>artifact.aspose-cloud-releases</name>
<url>https://artifact.aspose.cloud/repo</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-cloud-pdf</artifactId>
<version>21.11.0</version>
<scope>compile</scope>
</dependency>
</dependencies>
Після встановлення нам потрібно створити безкоштовний обліковий запис на Cloud Dashboard і отримати персональні облікові дані клієнта.
Витягніть текст із PDF за допомогою Java
Давайте розглянемо деталі вилучення тексту з PDF-файлу за допомогою Java cloud SDK. У цьому прикладі ми збираємося використовувати такий вхід PdfWithTable.pdf файл.
// для отримання додаткових прикладів відвідайте https://github.com/aspose-pdf-cloud/aspose-pdf-cloud-java/tree/master/Examples/src/main/java/com/aspose/asposecloudpdf/examples
try
{
// Отримайте ClientID і ClientSecret з https://dashboard.aspose.cloud/
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// створити екземпляр PdfApi
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
// назва вхідного документа PDF
String name = "PdfWithTable.pdf";
// прочитати вміст вхідного файлу PDF
File file = new File(name);
// завантажити PDF в хмарне сховище
pdfApi.uploadFile("input.pdf", file, null);
// X-координата лівого нижнього кута
Double LLX = 500.0;
// Y - координата нижнього лівого кута.
Double LLY = 500.0;
// X - координата правого верхнього кута.
Double URX = 800.0;
// Y - координата правого верхнього кута.
Double URY = 800.0;
// виклик API для перетворення PDF на текст
TextRectsResponse response = pdfApi.getText("input.pdf", LLX, LLY, URX, URY, null, null, null, null, null);
// Перехід через окреме входження тексту
for(int counter=0; counter <=response.getTextOccurrences().getList().size()-1; counter++)
{
// написати текстовий вміст у консолі
System.out.println(response.getTextOccurrences().getList().get(counter).getText());
}
System.out.println("Extract Text from PDF successful !");
}catch(Exception ex)
{
System.out.println(ex);
}
Тепер давайте спробуємо зрозуміти вказаний вище фрагмент коду:
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
Створіть екземпляр PdfApi, передаючи персоналізовані облікові дані як аргументи.
File file = new File(name);
pdfApi.uploadFile("input.pdf", file, null);
Прочитайте вхідний PDF за допомогою об’єкта File та завантажте його в хмарне сховище за допомогою методу uploadFile(…) класу PdfAPi. Зверніть увагу, що файл завантажується з назвою, яка використовується в методі uploadFile.
TextRectsResponse response = pdfApi.getText("input.pdf", LLX, LLY, URX, URY, null, null, null, null, null);
Тепер викличте метод getText(..), де ми вказуємо ім’я вхідного PDF-файлу, прямокутні розміри сторінки, з якої нам потрібно витягти текстовий вміст, і повертаємо витягнутий вміст об’єкту TextRectsResponse.
response.getTextOccurrences().getList().get(counter).getText()
Нарешті, щоб надрукувати вилучений текстовий вміст, ми збираємося перебрати всі TextOccurances і відобразити їх у консолі.
PDF у текст за допомогою команд cURL
Окрім фрагмента коду Java, ми також можемо виконувати операцію pdftotext за допомогою команд cURL. Тепер однією з передумов для цього підходу є створення маркера доступу JWT (на основі облікових даних клієнта) за допомогою наступної команди.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Після створення JWT виконайте наведену нижче команду, щоб отримати текст із PDF-файлу, який уже доступний у хмарному сховищі.
curl -v -X GET "https://api.aspose.cloud/v3.0/pdf/input.pdf/text?splitRects=true&LLX=0&LLY=0&URX=800&URY=800" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>"
Коротка порада
Шукаєте безкоштовну програму PDF to Text! Спробуйте скористатися нашим PDF Parser.
Прикінцеві зауваження
Підсумовуючи, вилучення тексту з PDF-файлів за допомогою Java може бути потужним рішенням для тих, хто хоче автоматизувати обробку й аналіз даних. Завдяки цьому посібнику ви тепер маєте міцну основу для розвитку та можете легко реалізувати власне рішення на основі Java для вилучення тексту з документів PDF. Незалежно від того, чи хочете ви отримати текст для аналізу даних, машинного навчання чи будь-якої іншої мети, Java надасть гнучку та надійну платформу для ваших потреб. Тож перевірте свої щойно набуті навички!
Якщо вам цікаво ознайомитися з іншими цікавими функціями, які пропонує API, перегляньте Документацію продукту. Нарешті, якщо у вас виникнуть проблеми під час використання API або у вас є будь-який пов’язаний запит, зв’яжіться з нами через безкоштовний Форум підтримки продукту.
Схожі статті
Перейдіть за наведеними нижче посиланнями, щоб дізнатися більше про: