21

I convert files of different formats (JPEG, PNG, TIFF, PDF) to JPEG using Wand, a ctypes-based ImageMagick binding for Python. The resulting files are very low-quality. If there is text in original file, it becomes almost unreadable in the resulting file.

Before Wand i used Imagemagick console commands, and with the option -density i could achieve great quality. For example: convert -density 200 file.pdf file.jpg.

What is the most idiomatic way to improve image quality of the resulting image file in Wand? Or, at least, how do i set the density option in Wand?

Mirzhan Irkegulov
  • 17,660
  • 12
  • 105
  • 166

1 Answers1

37

This would help you. Pass resolution option to the constructor of Image e.g.:

with Image(filename='file.pdf', resolution=200) as image:
    image.compression_quality = 99
    image.save(filename='file.jpg')
minhee
  • 5,688
  • 5
  • 43
  • 81
  • 3
    I am using wand to resize the image to decrease its size, but I keep getting images with bigger sizes sometimes with a lot bigger sizes. How to fix this? – Jahongir Rahmonov Feb 18 '15 at 07:30
  • 1
    For posterity, the default resolution is 72. Units are pixels per inch. The result is not aliased, so the choice is between huge files or pixelated curves. – Bob Stein May 06 '18 at 11:56