2011-01-24 15 views
8

¿Cómo se lee el archivo PDF y se pone el contenido en la cadena? Usando lenguaje PHP.Conversión de PDF a la cadena

+1

Uso [ 'file_get_contents'] (http://de3.php.net/manual/en/function.file-get-contents.php) si necesita la datos binarios en bruto o actualiza tu pregunta y cuéntanos qué es lo que realmente quieres. –

+0

Necesito obtener un texto limpio de los archivos pdf. Cuando obtengo texto de archivos PDF, necesito insertar este texto en DB. – lolalola

Respuesta

7

Se podría utilizar algo como pdftotext que viene con el paquete Xpdf en Linux. El comando popen continuación, se puede utilizar para canalizar la salida de pdftotext en una cadena:

$mystring = ""; 
$fd = popen("/usr/bin/pdftotext blah.pdf","r"); 
if ($fd) { 
    while (($myline = fgets($fd)) !== false) { 
     $mystring .= $myline; 
    } 
} 
+0

Enlace de descarga para xpdf: https://www.xpdfreader.com/download.html y enlace a popen: http://php.net/manual/en/function.popen.php – kurdtpage

3

encontrado esta clase muy agradable! Además, puede agregar funcionalidad para satisfacer sus necesidades.

Probablemente estos le ayudarán a agregar funciones:

Si no funciona, compruebe si puede resaltar/marcar su texto al abrir en Adobe Reader (si no puede, el texto de su archivo probablemente se guarda como curvas geométricas), verifique también la codificación.

0

Instale APACHE-TIKA en su servidor. APACHE-TIKA admite más archivos pdf. Guía de instalación: http://www.acquia.com/blog/use-apache-solr-search-files

y último código es fácil:

$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; 
0

Usted puede utilizar la clase PHP que está disponible aquí:

http://www.pdftotext.eu

Se trata de un texto de un PDF de dominio público extractor completamente escrito en PHP puro, lo que significa que no necesita depender de comandos externos. Proporciona una interfaz sencilla para recuperar el texto:

include ('PdfToText.phpclass') ; 
$pdf = new PdfToText ('mysample.pdf') ; 
echo "PDF contents are : " . $pdf -> Text . "\n" ;