Search code examples
imagemagickimagemagick-convertmogrify

ImageMagick generates corrupted PDF file


When I try to convert an image to PDF using ImageMagick by executing the command

mogrify -format pdf ImageMagick.png

the resulting PDF is corrupted. When I try to open it using MuPDF it fails:

error: cannot recognize version marker
warning: trying to repair broken xref
warning: repairing PDF document
error: name too long
warning: skipping ahead to next token
error: invalid key in dict
error: invalid key in dict
error: name too long
warning: skipping ahead to next token
error: no objects found
mupdf: error: cannot open document

The output of ImageMagick using the -verbose-flag is:

ImageMagick.png PNG 600x621 600x621+0+0 8-bit sRGB 123261B 0.020u 0:00.009
ImageMagick.png=>ImageMagick.pdf PNG 600x621 600x621+0+0 8-bit sRGB 122974B 0.070u 0:00.060

The problem with the PDF file seems to be, that the first bytes of the file aren't %PDF-.

This is my input-file input-file

And this is the resulting PDF

My system:

  • Arch Linux
  • ImageMagick 7.0.8-8 Q16 x86_64 2018-08-01 (installed by executing pacman -S imagemagick)

Solution

  • The problem was, that ghostscript wasn't installed. ImageMagick doesn't seem to throw an error when ghostscript isn't installed.

    To install ghostscript use pacman -S ghostscript