Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Общие вопросы > Работа с PDF на Perl


Автор: mvinogr 3.4.2009, 21:31
Доброго всем времени суток!!!
Скажите есть ли библиотеки, позволяющие обрабатывать PDF документы? Не создавать, а выделять текстовую часть из уже созданных, чтобы далее работать с ней как с массивом строк.
И заодно: есть ли библиотеки, позволяющие аналогично работать с какими-либо другими форматами (например doc, djvu, документы OpenOffice и т.д.)?

Автор: klem4 4.4.2009, 09:46
http://search.cpan.org/search?query=PDF&mode=all Там смотрели ? 

в PDF::Core есть например вот что :

Цитата
PDFGetline ( filehandle, offset )

This internal function was used to read a line from a PDF-file

Автор: amg 4.4.2009, 10:20
Цитата(mvinogr @  3.4.2009,  21:31 Найти цитируемый пост)
Скажите есть ли библиотеки, позволяющие обрабатывать PDF документы? Не создавать, а выделять текстовую часть из уже созданных
Есть. Я пользовался (найти легко, см. пост  klem4). Но (на linux) рекомендую использовать внешнюю программу, pdftotext. Аналогично, catdoc, djvutxt.

Автор: FishHunter 4.4.2009, 12:16
http://www.opennet.ru/base/dev/pdf_api2.txt.html не совсем в тему, но мож пригодится

Автор: Bulat 4.8.2009, 09:27
Использую модуль CAM::PDF

Код

...
use CAM::PDF;
my $pdf = CAM::PDF->new("$Directory$curfile",'','',{fault_tolerant => 1});
$Chars = $pdf -> numPages();
@PDFSize = $pdf -> getPageDimensions(scalar($Chars/2));
...


В @PDFSize  у меня координаты размера страницы в поинтах, если я не ошибаюсь, т.е 1/72 дюйма, а дюйм в свою очередь 25,4 мм. Но те, кто работают с тем что я написал, утверждают, что для некоторых pdf-документов размеры страницы не верные, где-то в 10% случаев. Аналогичное я реализовывал даже на Java, но и с библиотеками данного языка у меня все равно получаются те же размеры, т.е. те же поинты smile 

Мож, кто знает еще что-нить стабильное, модуль который бы может еще и размеры выдавал не только в поинтах. smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)