not - ImageMagick convierte pdf a jpeg tiene mala calidad de texto después de actualizar la versión de ImageMagick a 6.7.8
man convert (3)
Los archivos PDF son archivos vectoriales y no tienen un tamaño específico. Su tamaño se controla definiendo la densidad y las unidades antes de leer en el archivo PDF. Puede obtener una mejor calidad para el mismo tamaño de archivo de salida deseado mediante supersampling. Eso significa rasterizar el PDF a un tamaño grande y luego cambiar el tamaño al tamaño real deseado. Por ejemplo en ImageMagick:
convert -units pixelsperinch -density 288 image.pdf -resize 25% output.jpg
La densidad nominal si se deja fuera es de 72 dpi. Entonces 72 * 4 = 288. Luego, redimensiona 1/5 = 25% vuelve al mismo tamaño predeterminado, pero debería verse mucho mejor. Cambie la densidad o cambie el tamaño para tratar con la calidad y el tamaño final como desee.
Luego de actualizar ImageMagick
calidad del texto se degradó al convertir pdf a jpeg:
Imagen antigua
Nueva imagen Comando de conversión: convert foo.pdf foo.jpeg
Versión antigua de ImageMagick:
[root@home]# convert -version
Version: ImageMagick 6.2.8 05/07/12 Q16 file:/usr/share/ImageMagick-6.2.8/doc/index.html
Copyright: Copyright (C) 1999-2006 ImageMagick Studio LLC
Tamaño de los archivos generados:
-rw-r--r-- 1 root root 139K Apr 2 16:11 foo-0.jpeg
-rw-r--r-- 1 root root 130K Apr 2 16:11 foo-1.jpeg
-rw-r--r-- 1 root root 334K Mar 24 14:27 foo.pdf
Después de actualizar ImageMagick
[root@home]# convert -version
Version: ImageMagick 6.7.8-10 2012-08-17 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
Features: OpenMP
Tamaño de los archivos generados:
-rw-r--r-- 1 root root 60K Apr 2 16:11 foo-0.jpeg
-rw-r--r-- 1 root root 55K Apr 2 16:11 foo-1.jpeg
-rw-r--r-- 1 root root 334K Mar 24 14:27 foo.pdf
He intentado usar la bandera de antialias
:
convert -antialias foo.pdf foo.jpeg
Lo que no hizo nada, he intentado establecer una quality
superior:
convert -quality 100 foo.pdf foo.jpeg
y súper muestreo :
convert -density 288 -background white -alpha off foo.pdf -resize 25% foo.jpeg
ambos dieron archivos más grandes y mejores resultados, pero pasaron más tiempo y tuvieron menor calidad que la versión anterior de ImageMagick.
¿Algún consejo?
Enlace al archivo
Parece que ese problema en el DPI . al convertir pdf, imagemagick utilizando Ghostscript . Puedes saltarte usando imagemagick.
$ gs -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dGridFitTT=2 -dUseCropBox -dTextAlphaBits=4 -dGraphicsAlphaBits=4 -r200x200 -sDEVICE=jpeg -dJPEGQ=100 -sOutputFile=foo-%05d.jpg foo.pdf
establecer la opción -r mayor valor. Ghostscript tiene valor por defecto es 100DPI.
o utilizando la opción de conversión -densidad. esta opción establece pdf convertido DPI.
$ convert -density 200x200 foo.pdf foo.jpg
Veo el mismo problema con su archivo de muestra. Parece que los delegados de ImageMagick para la conversión de PDF pueden haber cambiado con la nueva instalación.
Si intenta convert -verbose foo.pdf foo.jpeg
, ¿ve -sDEVICE=pngalpha
en el comando que se envía a gs? El dispositivo pnmraw se ha utilizado en el pasado, y volver a cambiarlo parece solucionarme el problema.
En el archivo delegates.xml
de ImageMagick (que puede estar en / etc / ImageMagick, pero podría estar en otro lugar dependiendo de su configuración), busque la línea de delegado decode="ps:alpha"
y cambie -sDEVICE=pngalpha
en el comando to -sDEVICE=pnmraw
. (Probablemente puedes buscar pngalpha en el archivo).