Maintenir la taille du PDF et améliorer la qualité de l'image avec PHP et ImageMagick
Cette requête de codage tourne autour de l'utilisation d'ImageMagick pour convertir des fichiers PDF en JPEG . Le script fourni rencontre des problèmes de qualité et une modification involontaire de la taille de l'image lors de la conversion. Notre objectif est de répondre à ces problèmes et d'établir une solution qui produit des sorties JPEG satisfaisantes tout en préservant les dimensions originales du PDF.
Pour résoudre le problème de qualité, la méthode setCompressionQuality() d'ImageMagick peut être utilisée. L'augmentation de la valeur spécifiée dans l'argument augmentera la qualité du JPEG généré. De plus, la résolution de l'image convertie peut être contrôlée en manipulant la méthode setResolution(). Idéalement, setResolution() doit être exécuté avant de charger le fichier PDF pour des résultats optimaux.
Plongeons dans une version révisée du script qui intègre ces améliorations :
// Instantiate Imagick $im = new Imagick(); // Set image resolution (before loading PDF) $im->setResolution(300, 300); // Load PDF image $im->readimage('document.pdf[0]'); // Set image format to JPEG $im->setImageFormat('jpeg'); // Adjust JPEG compression quality $im->setCompressionQuality(95); // Output JPEG with original PDF dimensions $im->writeImage('thumb.jpg'); // Clear and destroy Imagick object $im->clear(); $im->destroy();
Ce script affiné La séquence garantit que l'image JPEG résultante conserve la taille d'origine du document PDF et offre une qualité améliorée. La combinaison de ces modifications résout les problèmes susmentionnés et fournit un processus de conversion PDF en JPEG transparent.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!