Как преобразовать PDF в файл JSON / EXCEL / WORD? - PullRequest
0 голосов
/ 17 апреля 2020

Мне нужно получить данные из pdf-файла с его заголовком для дальнейшего сравнения с данными БД.

Я пытался использовать pdfbox, google vision ocr, itext, но все библиотеки дали мне строку без структуры и headers.

Пример: Date \ nNumber \ nStatus \ n12 \ 12 \ 2020 \ n442334 \ delivery

Я буду пытаться конвертировать pdf в excel / word и получать данные из них, но для этой реализации Мне нужно прочитать PDF и записать данные в Excel / Word

Как я могу получить данные с заголовками?

Ответы [ 2 ]

1 голос
/ 17 апреля 2020

«Дата \ nNumber \ nStatus \ n12 / 12/2020 \ n442334 \ nдоставлено» выглядит достаточно структурированной для меня. Вы можете просто разделить его на "\ n". Это потребует некоторых знаний о структуре таблиц.

Я приобрел хороший опыт работы с Google Vision OCR. Как ты это называешь?

0 голосов
/ 21 апреля 2020

Я не нашел ответа на свой вопрос.

Я использую этот код для своей задачи:

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPage;
import org.apache.pdfbox.text.PDFTextStripperByArea;
import java.awt.*;
import java.io.File;
import java.io.IOException;

public class ExtractTextByArea {

    public String getTextFromCoordinate(String filepath,int x,int y,int width,int height) {
        String result = "";
        try (PDDocument document = PDDocument.load(new File(filepath))) {

            if (!document.isEncrypted()) {

                PDFTextStripperByArea stripper = new PDFTextStripperByArea();
                stripper.setSortByPosition(true);
               // Rectangle rect = new Rectangle(260, 35, 70, 10);
                Rectangle rect = new Rectangle(x,y,width,height);
                stripper.addRegion("class1", rect);
                PDPage firstPage = document.getPage(0);
                stripper.extractRegions( firstPage );
               // System.out.println("Text in the area:" + rect);
                result = stripper.getTextForRegion("class1");

            }
        } catch (IOException e){
            System.err.println("Exception while trying to read pdf document - " + e);
        }
        return result;
    }

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...