Главное Авторские колонки Вакансии Вопросы
267 0 В избр. Сохранено
Авторизуйтесь
Вход с паролем

Как извлечь текст и изображения из PDF в Java

В данной статье показано, как извлечь текст и изображения из PDF-документа с помощью Free Spire.PDF for Java.
Мнение автора может не совпадать с мнением редакции

Одним из недостатков PDF-файлов является то, что пользователи не могут напрямую извлекать текст или изображения из документа, что создает проблемы для повторного использования полезной информации. В данной статье показано, как извлечь текст и изображения из PDF-документа с помощью Free Spire.PDF for Java.

Ниже приведен снимок экрана примера PDF-документа.


Установка Spire.Pdf.jar

Если вы создали Maven-проект, вы можете легко импортировать jar в свое приложение, используя следующие конфигурации. Для проектов, не использующих Maven, загрузите jar-файл по этой ссылке и добавьте его в качестве зависимости в свое приложение.


Пример 1. Извлечение текста из PDF

import java.io.FileWriter;

import java.io.IOException;

public class ExtractText {

public static void main(String[] args) {

//create a PdfDocument instance

PdfDocument doc = new PdfDocument();

//load a sample PDF file

doc.loadFromFile("C:\Users\Administrator\Desktop\sample.pdf");

//create a StringBuilder instance

StringBuilder sb = new StringBuilder();

//loop through PDF pages and extract text of each page

PdfPageBase page;

for (int i = 0; i < doc.getPages().getCount(); i++) {

page = doc.getPages().get(i);

sb.append(page.extractText(true));

}

FileWriter writer;

try {

//write text into a .txt file

writer = new FileWriter("C:\Users\Administrator\Desktop\ExtractText.txt");

writer.write(sb.toString());

writer.flush();

} catch (IOException e) {

e.printStackTrace();

}

doc.close();

}

}


Пример 2. Извлечение изображений из PDF

import javax.imageio.ImageIO;

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.IOException;

public class ExtractImage {

public static void main(String[] args) throws IOException {

//create a PdfDocment object

PdfDocument doc = new PdfDocument();

//load a PDF file

doc.loadFromFile("C:\Users\Administrator\Desktop\sample.pdf");

//declare an int variable

int index = 0;

//loop through the pages

for (int i = 0; i < doc.getPages().getCount(); i++) {

//extract images from a particular page

for (BufferedImage image : doc.getPages().get(i).extractImages()) {

//specify the file path and name

File output = new File("C:\Users\Administrator\Desktop\ExtractedImages\" + String.format("Image_%d.png", index++));

//save image as .png file

ImageIO.write(image, «PNG», output);

}

}

}

}


0
В избр. Сохранено
Авторизуйтесь
Вход с паролем
Комментарии
Выбрать файл
Блог проекта
Расскажите историю о создании или развитии проекта, поиске команды, проблемах и решениях
Написать
Личный блог
Продвигайте свои услуги или личный бренд через интересные кейсы и статьи
Написать

Spark использует cookie-файлы. С их помощью мы улучшаем работу нашего сайта и ваше взаимодействие с ним.