Ошибка при чтении текста из файла PDF с использованием perl api pdf :: api2 - PullRequest
1 голос
/ 03 ноября 2010

Это код для чтения текста в формате PDF с использованием perl

#!/usr/bin/perl

use PDF::API2;

    $pdf = PDF::API2->new;
    $pdf = PDF::API2->open('01443325.pdf');
    $page = $pdf->page;
    $pagenum=10;
    $pdf->stringify;

    $page = $pdf->openpage($pagenum);

    print $page;

Я не получаю никакого вывода при запуске этого кода.Как убрать ошибку?

1 Ответ

3 голосов
/ 04 ноября 2010

Когда вы запускаете $ pdf-> stringify выше, он возвращает содержимое файла в виде строки, но тогда вы ничего с этим не делаете.Однако, если вы распечатаете его, он не даст вам текстовое представление, которое вам нужно, поскольку это просто оригинальные байты PDF в строке.

Аналогично, установка $ pagenum в 10 не имеет последствий дляОстальная часть программы как переменная никак не связана ни с объектом $ pdf, ни с $ page.

Я думаю, что самый простой вариант - не пытаться делать это с PDF :: API2, а искатьо том, можете ли вы сначала запустить что-то вроде pdftotext из xpdf или poppler, а затем прочитать в выводе.

Если нет, то на странице Perl Monks есть несколько предложений http://www.perlmonks.org/?node_id=810721, и многие другие в Googleпод "Perl извлекать текст из PDF".Есть даже предыдущий вопрос SO на Как мне извлечь текст из файла PDF в Perl? .

Удачи!

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