PHP-PDFBox est une petite bibliothèque qui fait office de wrapper facilitant l'utilisation de PDFBox https://pdfbox.apache.org/ en PHP.
Il fournit une API simple pour appeler pdfbox-app.jar. La bibliothèque est actuellement limitée aux fonctionnalités fournies par les utilitaires de ligne de commande de PDFbox. Il prend actuellement en charge PDFBox version 2.
PDFBox est publié sous la licence Apache v2.0 et est décrit comme « La bibliothèque Apache PDFBox® est un outil Java open source permettant de travailler avec des documents PDF. »
Il est recommandé d'installer PHP-PDFBox via Composer :
{
"require" : {
"php-pdfbox/php-pdfbox" : " ^2.0 "
}
}
pdfbox-app.jar est inclus dans l'installation. Vous pouvez/devriez vérifier l'intégrité de pdfbox-app.jar avec les signatures PGP disponibles sur https://pdfbox.apache.org/download.html.
L'utilisation de base peut être effectuée comme suit :
$ file = new Pdfbox Processor PdfFile (
new Pdfbox (
' /path/to/java ' ,
' /path/to/pdfbox-app.jar '
);
);
// Convert pdf to text
echo $ file -> toText ( ' test.pdf ' );
(La fourniture d'un objet Logger est facultative dans la version 2.0.2+.) Pour l'utiliser avec psr/log et un enregistreur compatible PSR-3, procédez comme :
use Psr Log LoggerInterface ;
use MyPSR3Logger ;
class Foo
{
private $ logger ;
public function __construct ( LoggerInterface $ logger = null ){
$ this -> logger = $ logger ;
}
public function doPdfBox (){
try {
$ file = new Pdfbox Processor PdfFile (
new Pdfbox (
' /path/to/java ' ,
' /path/to/pdfbox-app.jar ' ,
$ this -> logger ;
);
);
// Convert pdf to text
echo $ file -> toText ( ' test.pdf ' );
} catch ( Exception $ e ) {
$ this -> logger -> error ( $ e -> getMessage (), [ ' exception ' , $ e -> backtrace ()]);
}
}
}
$ myLogger = new MyPSR3Logger ();
$ foo = new Foo ( $ myLogger );
Voir examples/ConsoleLogger.php
pour une classe d'enregistreur standard conforme à PSR3 qui peut être copiée et adaptée.
Voir examples/*.php
pour plus d'exemples.
La documentation HTML générée par phpDocumentor peut être trouvée dans docs/api
.
PHP-Pdfbox est publié sous licence MIT http://opensource.org/licenses/MIT
Voir le fichier LICENCE pour plus d'informations.