¿Cómo ejecutar ImageMagick para convertir solo la primera página del PDF de varias páginas a JPEG?


¿Cómo puedo ejecutar Imagemagick's convert si quiero un JPEG solo desde la primera página de un PDF de varias páginas?

Author: Kurt Pfeifle, 2012-09-27

3 answers

Si está utilizando una línea de comandos convert puede ejecutarla con estos parámetros:

convert  source.pdf[0]  output.jpeg

Tenga en cuenta que el número de páginas de ImageMagick está basado en 0. Así que [0] significa 'página 1'. Para seleccionar, digamos la 4a página, tendrías que usar [3].

Esta sintaxis no solo funciona para la entrada de PDF. También funciona con otros formatos multi-página o multi-marco, como TIFF multi-página o GIF animados multi-marco y PNGs.

 69
Author: Arkadiusz 'flies' Rzadkowolski,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-10-01 13:39:20

No use ImageMagick, use Ghostscript. ImageMagick llama a Ghostscript para hacer el trabajo de todos modos...

gs -sDEVICE=jpeg -sOutputFile=<output-filename> -dLastPage=1 <input filename>

También puede cambiar el dispositivo a jpegcmyk (para la salida CMYK) o jpeggray para la salida gris, puede cambiar la resolución usando -r, use -dFirstPage y -dLastPage para extraer un rango continuo de páginas, etc.

 10
Author: KenS,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-10-01 13:29:25

Para continuar con la respuesta de @KenS, Aquí hay algunos detalles más, particularmente para los usuarios de Windows.

Puede descargar GhostScript para Windows aquí: http://www.ghostscript.com/download/gsdnld.html . La ruta de instalación predeterminada para el ejecutable es "C:\Program Files\gs\gs910\bin\gswin64c.exe".

Los argumentos de la línea de comandos enumerados anteriormente también son correctos en Windows, pero aquí hay algunos más que encontré útiles:

gswin64c.exe -dNOPAUSE -dBATCH -r96 -sDEVICE=jpeg -sOutputFile="<out-file.jpg>"
             -dFirstPage=1 -dLastPage=1 "<input-file.pdf>"

También creé un archivo por lotes que envuelve esto está muy bien y lo publiqué en mi cuenta de GitHub. Hace que sea mucho más fácil crear miniaturas para múltiples .archivos PDF también. Échale un vistazo en pdf2jpg.bat .

 3
Author: wasatchwizard,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-01-31 07:45:02