Foros del Web » Programando para Internet » PHP »

Leer documentos PDF

Estas en el tema de Leer documentos PDF en el foro de PHP en Foros del Web. Hola, me gustaría saber cómo se puede leer el contenido de un documento PDF. Por ejemplo, que el usuario suba un fichero PDF mediante un ...
  #1 (permalink)  
Antiguo 27/06/2005, 04:21
 
Fecha de Ingreso: junio-2005
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
Leer documentos PDF

Hola, me gustaría saber cómo se puede leer el contenido de un documento PDF. Por ejemplo, que el usuario suba un fichero PDF mediante un formulario, y mediante código PHP leer el contenido de ese fichero para indexar el contenido.
Muchas gracias
  #2 (permalink)  
Antiguo 27/06/2005, 05:30
 
Fecha de Ingreso: junio-2005
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
Hola, sólo quería decir que me sobra con que alguien me diga alguna librería que conozca que valga para esto, o alguna dirección donde pueda consultarlo.
Muchas gracias
  #3 (permalink)  
Antiguo 27/06/2005, 06:58
 
Fecha de Ingreso: junio-2005
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
He encontrado la siguiente función, pero no obtiene ningún resultado a partir de un documento PDF normal. He estado comprobando lo que hace y al descomprimir los datos del PDF con @gzuncompress ($data); no devuelve nada. Puede ser problema de la función utilizada, que no utilice el mismo tipo de compresión.

Alguien sabe algo de esto?

El código es el siguiente:

Código PHP:
function pdf2string ($sourceFile)
  {
   
$textArray = array ();
   
$objStart 0;
  
   
$fp fopen ($sourceFile'rb');
   
$content fread ($fpfilesize ($sourceFile));
   echo 
$content;
   
fclose ($fp);
  
   
$searchTagStart chr(13).chr(10).'stream';
   
$searchTagStartLenght strlen ($searchTagStart);
  
   while (((
$objStart strpos ($content$searchTagStart$objStart)) && ($objEnd strpos ($content'endstream'$objStart+1))))
   {
     
$data substr ($content$objStart $searchTagStartLenght 2$objEnd - ($objStart $searchTagStartLenght) - 2);
     
$data = @gzuncompress ($data);
    
     if (
$data !== FALSE && strpos ($data'BT') !== FALSE && strpos ($data'ET') !== FALSE)
     {
       
$textArray [] = ExtractText ($data);
     }
    
     
$objStart $objStart $objEnd $objEnd $objStart 1;
   }
  
   return 
$textArray;
  }
 
  function 
ExtractText ($postScriptData)
  {
   while (((
$textStart strpos ($postScriptData'('$textStart)) && ($textEnd strpos ($postScriptData')'$textStart 1)) && substr ($postScriptData$textEnd 1) != '\\'))
   {
     
$plainText .= substr ($postScriptData$textStart 1$textEnd $textStart 1);
     if (
substr ($postScriptData$textEnd 11) == ']'//this adds quite some additional spaces between the words
     
{
       
$plainText .= ' ';
     }
    
     
$textStart $textStart $textEnd $textEnd $textStart 1;
   }
  
   return 
stripslashes ($plainText);
  }
?> 
  #4 (permalink)  
Antiguo 28/06/2005, 02:29
 
Fecha de Ingreso: junio-2005
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
ayuda please
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:52.