Quelles bibliothèques, extensions, etc. seraient nécessaires pour rendre une partie d'un document PDF dans un fichier image?
La plupart des bibliothèques PHP PDF que j'ai trouvées se concentrent sur la création de documents PDF, mais existe-t-il un moyen simple de rendre un document dans un format d'image adapté à une utilisation Web?
Notre environnement est une pile LAMP.
.jpg
extension du fichier . J'ai essayé la méthode AddHandler .htaccess et cela n'a pas fonctionné.Réponses:
Vous avez besoin
ImageMagick
etGhostScript
Les
[0]
moyenspage 1
.la source
$im->thumbnailImage(1500, 0);
Cela définira votre image jpg sur une largeur de 1500 et conservera l'échelle. Voir la documentationPour ceux qui n'ont pas ImageMagick pour une raison quelconque, les fonctions GD fonctionneront également, en conjonction avec GhostScript. Exécutez la commande ghostscript avec
exec()
pour convertir un PDF en JPG et manipulez le fichier résultant avecimagecreatefromjpeg()
.Exécutez la commande ghostscript:
Pour manipuler, créez une nouvelle image d'espace réservé
$newimage = imagecreatetruecolor(...)
, et importez l'image actuelle.$image = imagecreatefromjpeg('whatever.jpg')
, puis vous pouvez utiliserimagecopyresampled()
pour modifier la taille, ou n'importe quel nombre d'autres non-imagemagick
commandes intégréesla source
gs
binaire.something;rm -rf /
?Vous pouvez également obtenir le nombre de pages en utilisant
Ensuite, vous pouvez créer des vignettes de toutes les pages en utilisant une boucle, par exemple.
la source
Utilisez l'extension php Imagick . Pour contrôler la taille souhaitée de l'image de sortie raster, utilisez la fonction setResolution
(Extension sur Paolo Bergantino sa réponse et Luis Melgratti son commentaire. Vous devez régler la résolution avant de charger l'image.)
la source
Si vous chargez le PDF à partir d'un blob, voici comment vous obtenez la première page au lieu de la dernière page:
la source
Vous pouvez également essayer d'exécuter l'utilitaire de conversion fourni avec imagemagick.
la source
convert
binaire.echo 'image-0.jpg';
renvoie une chaîne.Je suis l'auteur de PDFlib qui est un wrapper GhostScript pour php, l'avantage d'utiliser cette bibliothèque est qu'elle est déjà testée et qu'elle ne nécessite pas
ImageMagic
Les
GhostScript
commandes sont toujours plus rapides qu'enImageMagic
matière de PDF, vous devez donc opter pour un wrapper GhostScript ou des commandes GhostScript puresla source
J'installe fini! Ça a marché!
Vous pouvez faire une installation de base imagemagick sur Windows.
En cours d'
php (local)
utilisation, appelezexec(<command line>)
ex:En outre, vous pouvez être utilisé
class imagick
dans la classe PHP ImagickMerci à tous m'a aidé!
la source
Pensez différemment, vous pouvez utiliser la bibliothèque suivante pour convertir le pdf en image en utilisant javascript
http://usefulangle.com/post/24/pdf-to-jpeg-png-with-pdfjs
la source
Voici une classe simple que j'ai écrite et utilisée sur quelques projets. Il enveloppe
imagick
et gère simplement l' écriture de chaque page sur le disque. Si quelqu'un cherche toujours un moyen facile de le faire, ce lien peut être utile.la source