Page 1 sur 1

Bonjour, J'essaie en vain d'utiliser xpdf pour récupérer le

Posté : 13 déc. 2010, 18:29
par Hall
Bonjour,
J'essaie en vain d'utiliser xpdf pour récupérer les donnéesm de mes fichiers pdf pour les indexer mais ça ne fonctionne pas.
Je m'explique, je suis sous Vista pro et j'ai téléchargé la version win32 de xpdf (ftp://ftp.foolabs.com/pub/xpdf/

J'ai copié le fichier téléchargé dans mon répertoire librairie.

Maintenant dans un contrôleur, j'essaie de récupérer les données du fichier celia.pdf pour pouvoir les indexer

Code : Tout sélectionner

$indexPath = APPLICATION_PATH."cvtheque/docindex"; $index = Zend_Search_Lucene::open($indexPath); //Name of the pdf document with out the extension $pdf_filename = "E:/PortableDrive/App/xampp/htdocs/pagesinterim.com/trunk/Sources/public/cvtheque/celia"; // get pdf information $pdftotextpath= "E:/PortableDrive/App/xampp/htdocs/pagesinterim.com/trunk/Sources/library/xpdf/pdftotext.exe"; $output=$pdftotextpath."(".$pdf_filename.".pdf)"; //$output = exec("pdfinfo ".$pdf_filename.".pdf"); //Gets the metadata $data = explode("\n", $output); //puts it into an array print_r($data); exit; //Get the metadata that we need from the PDF. //Parse through the Array and store in variables. */ for($c=0; $c < count($data); $c++) { //Number of Pages if(stristr($data[$c],"pages") == true) { $pagestr = $data[$c]; echo $pagestr; } //Author if(stristr($data[$c],"author") == true) { $authorstr = $data[$c]; echo $authorstr; } //Title if(stristr($data[$c],"title") == true) { $titlestr = $data[$c]; } //Modification Date if(stristr($data[$c],"ModDate") == true) { $moddatestr = $data[$c]; } //File Size if(stristr($data[$c],"File size") == true) { $sizestr = $data[$c]; } }
Mais l'exec pdfinfo ne fonctionne pas.
Est-ce que vous voyez d'où vient l'erreur.

PS: J'utilise le code mis à disposition sur ce site

Merci d'avance pour votre aide!

Re: Bonjour, J'essaie en vain d'utiliser xpdf pour récupérer le

Posté : 14 déc. 2010, 07:44
par epommate2
Heuh, la ligne de l'exec est en commentaire ?

Re: Bonjour, J'essaie en vain d'utiliser xpdf pour récupérer le

Posté : 14 déc. 2010, 09:33
par Hall
Oui mais elle ne fonctionne quand même pas.

Utilisatrice de Zend Framework, je ne sais pas ou je doit copier le répertoire xpdf. Avez-vous une idée?

Re: Bonjour, J'essaie en vain d'utiliser xpdf pour récupérer le

Posté : 14 déc. 2010, 09:53
par epommate2
Mais qu'est ce qui ne fonctionne pas ? Il y a un message d'erreur ? Avez-vous essayer d'afficher la sortie ?

Re: Bonjour, J'essaie en vain d'utiliser xpdf pour récupérer le

Posté : 14 déc. 2010, 10:29
par Hall
oui justement, le print_r($data); me renvoie rien alors que le document existe bien et contient des informations.
Avez-vous déjà utiliser xpdf?

Re: Bonjour, J'essaie en vain d'utiliser xpdf pour récupérer le

Posté : 14 déc. 2010, 12:32
par Hall
Quand je fais:

Code : Tout sélectionner

echo exec('whoami');
Ca fonctionne bien, par contre quand je fais un:

Code : Tout sélectionner

echo exec('E:\trunk\Sources\public\cvtheque\pdfinfo '.$pdf_filename.".pdf");
Aucun résultat alors qu'en ligne de commande ça passe bien.

Merci d'avance pour votre aide.

Re: Bonjour, J'essaie en vain d'utiliser xpdf pour récupérer le

Posté : 14 déc. 2010, 12:40
par stealth35
si tu fait shell_exec a la place de exec ?

Re: Bonjour, J'essaie en vain d'utiliser xpdf pour récupérer le

Posté : 14 déc. 2010, 16:15
par Hall
Alors j'ai fait:

Code : Tout sélectionner

$pdf_filename = "E:/trunk/Sources/public/cvtheque/julien.pdf"; $outpath = preg_replace("/\.pdf$/", ".txt", $pdf_filename); $execpath="E:\trunk\Sources\public\cvtheque\pdftotext"; system($execpath." -enc UTF-8 ".escapeshellcmd($pdf_filename), $ret); $output = shell_exec('E:\trunk\Sources\public\cvtheque\pdfinfo '.$pdf_filename); //Gets the metadata $data = explode("\n", $output); //puts it into an array //Get the metadata that we need from the PDF. //Parse through the Array and store in variables. */ print_r($data);
et là ça marche...j'espère que ça pourra en aider d'autres!

Encore merci pour votre aide!