Как прочитать файл PDF и поместить содержимое в строку? Использование языка PHP.
Преобразование PDF в строку
Ответы (4)
Вы можете использовать что-то вроде pdftotext, который поставляется с пакетом Xpdf в Linux. Затем команду popen можно использовать для передачи вывода pdftotext в строку:
$mystring = "";
$fd = popen("/usr/bin/pdftotext blah.pdf","r");
if ($fd) {
while (($myline = fgets($fd)) !== false) {
$mystring .= $myline;
}
}
Нашел этот действительно хороший класс! Кроме того, вы можете добавить функциональность в соответствии с вашими потребностями.
Вероятно, это поможет вам добавить функциональность:
Если это не работает, проверьте, можете ли вы выделить/пометить свой текст при открытии в Adobe Reader (если нет, текст в вашем файле, вероятно, сохранен в виде геометрических кривых), проверьте также кодировку.
Установите APACHE-TIKA на свой сервер. APACHE-TIKA поддерживает больше, чем файлы PDF. Руководство по установке: http://www.acquia.com/blog/use-apache-solr-search-files
и окончательный код прост:
$string = "";
$fd = popen("java -jar yourpathtotika/tika-app-1.3.jar -t yourpathtopdf/sample.pdf","r");
while (!feof($fd)) {
$buffer = fgets($fd, 4096);
$string .= $buffer;
}
echo $string;
Вы можете использовать класс PHP, который доступен здесь:
Это общедоступный инструмент для извлечения текста из PDF, полностью написанный на чистом PHP, что означает, что вам не нужно полагаться на внешние команды. Он предоставляет простой интерфейс для извлечения текста:
include ( 'PdfToText.phpclass' ) ;
$pdf = new PdfToText ( 'mysample.pdf' ) ;
echo "PDF contents are : " . $pdf -> Text . "\n" ;
file_get_contents
, если вам нужны необработанные двоичные данные или обновите свой вопрос и расскажите нам, чего вы действительно хотите. - person Linus Kleen   schedule 24.01.2011