Извлечь текст из PDF-файла с помощью pdfbox - PullRequest
0 голосов
/ 14 февраля 2019

У меня возникла проблема с чтением PDF.

public class GetLinesFromPDF extends PDFTextStripper {

    static List<String> lines = new ArrayList<String>();
    Map<String, String> auMap = new HashMap();
    boolean objFlag = false;

    public GetLinesFromPDF() throws IOException {
    }

    /**
     * @throws IOException If there is an error parsing the document.
     */
    public static void main(String[] args) throws IOException {
        PDDocument document = null;
        String fileName = "E:\\sample.pdf";
        try {
            int i;
            document = PDDocument.load(new File(fileName));
            PDFTextStripper stripper = new GetLinesFromPDF();
            stripper.setSortByPosition(true);
            stripper.setStartPage(0);
            stripper.setEndPage(document.getNumberOfPages());

            Writer dummy = new OutputStreamWriter(new ByteArrayOutputStream());
            stripper.writeText(document, dummy);

            // print lines
            for (String line : lines) {
                //System.out.println("line = " + line);
                if (line.matches("(.*)Objection(.*)")) {
                    System.out.println(line);
                    withObjection(lines);
                    //System.out.println("iiiiiiiiiiii");
                    break;
                }
                //System.out.println("uuuuuuuuuuuuuu");

            }
        } finally {
            if (document != null) {
                document.close();
            }
        }
    }

    /**
     * Override the default functionality of PDFTextStripper.writeString()
     */
    @Override
    protected void writeString(String string, List<TextPosition> textPositions) throws IOException {

        System.out.println("textPositions = " + string);

        // System.out.println("tex   "+textPositions.get(0).getFont()+ getArticleEnd());
        // you may process the line here itself, as and when it is obtained
    }
}

нуждаются в выводе, например, у My pdf есть заголовок, нам нужно пропустить то же самое.

Содержимое файла PDF

pdf output and pdf content

как извлечь текст, как указано в отдельных форматах.

заранее спасибо.

...